some facts about memory usage for a change (was: Re: disable akonadi)
Martin Steigerwald
martin at lichtvoll.de
Sun Sep 2 12:06:02 BST 2018
Beware, this is in part a rant. I am tired to no end about discussions
about memory usage that lack meaningful *facts*. Those just spread
misinformation on the Internet, which already has an abundance of fake
facts these days. This may be my last post about this on this (IMHO
meanwhile rather pointless) thread.
René J.V. Bertin - 02.09.18, 11:00:
> Running the kind of session you describe on a machine with only 2Gb of
> RAM is probably an exercise in SM with any modern DE... Chrome
I agree that 2 GiB can be tight, however the main reason for that is not
the browser (see below).
Even with the session I describe below I get:
% free -m
total used free shared buff/cache available
Mem: 15825 3228 3284 459 9312 11838
Swap: 20479 1081 19398
(white space trimmed)
Which means that there are 3228 MiB actually physically used.
However on this system this is with MariaDB InnoDB buffer pool size set
to 1 GiB. AFAIR the standard size is about 128 MiB with recent Akonadi
versions. So you can reduce this number by about 870 MiB for a standard
setup. On 2 GiB kernel, libraries and applications may use a bit less
memory.
However… with a somewhat limited scope of running applications and in
case you are willing to allow for some delays here and there, I bet a
recent Plasma is actually workable with 2 GiB of RAM.
> readily uses around 600Mb just for the central process, FireFox even
600Mb of what? Apples, peaches, bananas? 600 Mb in itself just does not
mean anything. Even 600 Mb of memory does not mean a lot. Am I
nitpicking here? Probably yes. But for important reasons as you can see
below:
> more; extensions like AdBlock run as a separate process and can grow
> quite large; the same applies for each tab you open. Audacity is
> surprisingly lightweight in comparison, even for large projects.
> (You'd at least need to install The Great Suspender in all the
> browsers you use.)
Here just an example on how actual facts may look like (it can be
challenging to obtain actually facts about memory usage given the
complexity of Linux´s virtual memory manager):
If you consider memory the Chromium processes that are there after just
starting Chromium share with other processes running on this system I
only see about half of the memory usage (Unique Set Size, USS column)
% smemstat | head -1 ; smemstat -c | grep chromium
PID Swap USS PSS RSS D User Command
23980 48,0 K 95,8 M 110,6 M 172,1 M martin chromium
24125 0,0 B 79,7 M 88,1 M 149,8 M martin chromium
24090 0,0 B 53,9 M 63,1 M 129,1 M martin chromium
24033 0,0 B 51,2 M 62,8 M 112,3 M martin chromium
24062 0,0 B 12,9 M 22,1 M 87,6 M martin chromium
24141 0,0 B 11,4 M 19,1 M 79,2 M martin chromium
24117 0,0 B 10080,0 K 17,0 M 76,6 M martin chromium
24156 0,0 B 9924,0 K 17,0 M 75,8 M martin chromium
24001 0,0 B 7688,0 K 16,7 M 63,9 M martin chromium
24151 0,0 B 9992,0 K 16,6 M 74,8 M martin chromium
24087 0,0 B 4052,0 K 8072,0 K 47,3 M martin chromium
24003 0,0 B 144,0 K 1599,0 K 17,7 M martin chromium
This system runs a full KDE Plasma Desktop with Akonadi + KMail,
Akregator, Amarok, Quassel IRC on a ThinkPad T520 with Sandybridge i5.
Here with a fully loaded copy of today´s https://www.heise.de:
% smemstat | head -1 ; smemstat -c | grep --color chromium
PID Swap USS PSS RSS D User Command
23980 48,0 K 95,4 M 110,9 M 173,3 M martin chromium
24125 0,0 B 80,4 M 88,4 M 150,5 M martin chromium
24033 0,0 B 59,6 M 71,4 M 121,2 M martin chromium
24090 0,0 B 56,0 M 65,0 M 131,4 M martin chromium
24435 0,0 B 43,3 M 54,3 M 124,1 M martin chromium
24141 0,0 B 11,2 M 18,8 M 79,2 M martin chromium
24117 0,0 B 10,0 M 17,2 M 76,8 M martin chromium
24001 0,0 B 7688,0 K 16,7 M 63,9 M martin chromium
24151 0,0 B 10028,0 K 16,6 M 74,9 M martin chromium
24156 0,0 B 9132,0 K 16,1 M 75,0 M martin chromium
24450 0,0 B 3984,0 K 7992,0 K 47,0 M martin chromium
24003 0,0 B 144,0 K 1597,0 K 17,7 M martin chromium
But note: This Chromium has uBlock Origin running with quite strong
settings. IMHO the only ad and tracking blocker most users ever need and
way better than AdBlock Plus, Ghostery and you name it. Your memory
usage may be higher with all the ad and tracking crap.
However this is all Chromium processes after starting Chromium, not just
the "main" one.
Looking at Resident Memory Set Size (RSS) is better than looking as
Virtual Memory Set Size (VSS / VSZ) which is just completely bogus when
it comes to actual physically memory usage. But in a highly integrated
desktop where lots of apps share the same libraries, even RSS is way
over the board as you can see from above by comparing values or USS and
RSS.
Even Plasma´s KSysGuard has it. Actually is shows just 80960 KiB for
Chromium after just starting it. But it looks at only one of the
processes. You can expand it with context menu and gain a detailed
overview of memory consumption figures together with a basic explanation
about it. A developer added this, I bet after having been tired to no
end about the dozens or dozens of discussions about Plasma being a
resource hog which have one thing in common: A total or partial lack of
*facts*.
Without facts about actual resource there is really nothing to see here
in this thread except personal user experiences. And that may very well
be my last post about it. For those interested a search engine may help
you to find out more about VSS, RSS, USS and how memory management on
Linux actually work.
For those who do not understand at least the basics of it, I recommend
to let go of trying to make something out of some values of some random
tool, just install at least 4 GiB or even 8 GiB of RAM for basic day to
day desktop work even with Firefox (recent version) or Chromium and 50+
tabs open in it… and *be done* with it already.
That does not mean that more memory would not help. Those 16 GiB of RAM
in this ThinkPad T520 can help – already for the reason of additional
caching. Just right now it caches 9312 MiB – and RAM still is a lot
faster than at least SATA SSDs, but also NVMe SSDs and even persistent
memory devices –, but for today´s resumed session Linux did not yet put
all of the 16 GiB to work. 3284 MiB are still *completely* unused
(however there is no point removing a quarter of a 8 GiB RAM chip :)
from the machine).
% free -m
total used free shared buff/cache available
Mem: 15825 3228 3284 459 9312 11838
Swap: 20479 1081 19398
(repeated from above)
As well as the two SSDs with almost 1,5 TB of storage also help. If you
are into speed I recommend at least 8 GiB for a single Plasma sessions +
applications, together with SSD storage. This is much more important
than trying to put the latest and greatest CPU into the system. So you
can just buy an used ThinkPad or whatever and upgrade it. Even if its
older than 5 years already. Depending on what you do 16 GiB may be way
more than what your computer can put to good use. For 16 GiB you also
need at least T520, X220 … or later.
Now I let this go… whether or not someone there actually picks up some
of the facts about memory usage before posting again.
Thanks,
--
Martin
More information about the kde
mailing list