Investigating why my computer had suddenly become very s.l.o.w, I noticed that virtual memory usage had become very large. Following is an extract from a "$ ps axuw" for the system sorted according to VM usage, the top 20 processes in VM usage. Does anyone know why evolution + evolution evolution-data-server use not quite 2 GBytes? Or why the ordinary applets use together 1.4 GBytes? Or why sealert uses about 0.5 GBytes? Or anything else on this list?
PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND 2656 1.2 5.2 1668576 53708 ? Sl 12:20 1:26 evolution 2662 0.0 0.2 444628 2680 ? S 12:20 0:00 /usr/bin/python -E /usr/bin/sealert -s 2611 0.0 0.5 381732 6132 ? S 12:20 0:02 nautilus --no-desktop --browser 2660 3.4 2.4 354252 25396 ? Sl 12:20 3:51 /usr/lib/firefox-3.0.7/firefox 2887 0.0 0.2 339324 2280 ? Sl 12:21 0:00 /usr/libexec/evolution/2.24/evolution-alarm-notify ... 2642 0.0 0.5 331800 6080 ? Sl 12:20 0:02 gnome-terminal --geometry=90x30 1918 0.0 0.2 327812 2388 ? Ssl 12:09 0:02 /usr/bin/python -E /usr/sbin/setroubleshootd 2929 0.0 0.2 320556 2672 ? Sl 12:22 0:01 mono /usr/lib64/tomboy/Tomboy.exe --panel-applet ... 2827 0.0 0.2 313216 2804 ? Sl 12:21 0:00 /usr/libexec/evolution-data-server-2.24 ... 2909 0.0 0.3 288000 3708 ? S 12:21 0:00 /usr/libexec/clock-applet ... 2922 0.0 0.2 287036 2812 ? Sl 12:22 0:00 /usr/libexec/mixer_applet2 ... 2600 0.0 0.2 281228 3000 ? Ssl 12:20 0:00 /usr/libexec/gnome-settings-daemon 3769 0.0 0.3 276596 3604 ? S 12:31 0:00 /usr/libexec/notification-daemon 2665 0.0 0.3 262356 3392 ? S 12:20 0:00 mail-notification --sm-disable 2768 0.0 0.6 257552 6368 ? S 12:21 0:05 /usr/libexec/wnck-applet ... 2608 0.0 0.5 256040 5848 ? S 12:20 0:02 gnome-panel 5596 9.1 0.9 254712 9548 ? Sl 14:04 0:54 gnome-system-monitor 2673 0.0 0.2 241080 2680 ? S 12:20 0:00 gnome-power-manager 2776 0.0 0.3 240844 3544 ? S 12:21 0:00 /usr/libexec/trashapplet ... 2609 0.1 0.1 237652 1660 ? Ss 12:20 0:12 gnome-screensaver
For an old-line embedded systems programmer, who used to think in terms of KBytes, this looks a little excessive.
Thanks - jon
2009/3/10 Jonathan Ryshpan jonrysh@pacbell.net:
Investigating why my computer had suddenly become very s.l.o.w, I noticed that virtual memory usage had become very large. Following is an extract from a "$ ps axuw" for the system sorted according to VM usage, the top 20 processes in VM usage. Does anyone know why evolution
- evolution evolution-data-server use not quite 2 GBytes? Or why the
ordinary applets use together 1.4 GBytes? Or why sealert uses about 0.5 GBytes? Or anything else on this list?
PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND 2656 1.2 5.2 1668576 53708 ? Sl 12:20 1:26 evolution 2662 0.0 0.2 444628 2680 ? S 12:20 0:00 /usr/bin/python -E /usr/bin/sealert -s
You can't add up the VSZ sizes of processes and arrive at a simple sum, because you don't have enough information.
Program 1 links to library A and uses shared memory B => VSZ1 = SizeOf(1) + SizeOf(A) + SizeOf(B) Program 2 also links to library A and uses shared memory B => VSZ2 = SizeOf(2) + SizeOf(A) + SizeOf(B)
So you'd think that the total memory in use would be VSZ1+VSZ2, but each library is only in memory once so in actual fact it's only VSZ1+SizeOf(2).
To look at it another way, say you have 1000 processes running using 1kb, each linking in a different library of 1kb. The VSZ of each of them would only be 2kb. You then have an additional process using 1kb running, that links in *all* of the 1000 libraries already in memory. It's VSZ would be 1001kb, even though it's actually only using 1kb more of memory.
But yes, Evolution is a memory hog ;o)
Sharpe, Sam J wrote:
2009/3/10 Jonathan Ryshpan jonrysh@pacbell.net:
Investigating why my computer had suddenly become very s.l.o.w, I noticed that virtual memory usage had become very large. Following is an extract from a "$ ps axuw" for the system sorted according to VM usage, the top 20 processes in VM usage. Does anyone know why evolution
- evolution evolution-data-server use not quite 2 GBytes? Or why the
ordinary applets use together 1.4 GBytes? Or why sealert uses about 0.5 GBytes? Or anything else on this list?
PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND 2656 1.2 5.2 1668576 53708 ? Sl 12:20 1:26 evolution 2662 0.0 0.2 444628 2680 ? S 12:20 0:00 /usr/bin/python -E /usr/bin/sealert -s
You can't add up the VSZ sizes of processes and arrive at a simple sum, because you don't have enough information.
That's true, but I'm not sure it's relevant to the question of why the rocesses are so huge. I can't think of any justification for a simple mail program being 1.6GB, no matter how loaded with features it might be. So the answer is probably that it either (a) mmapped about half the Internet, or (b) leaks memory badly. Those are not mutually exclusive.
Program 1 links to library A and uses shared memory B => VSZ1 = SizeOf(1) + SizeOf(A) + SizeOf(B) Program 2 also links to library A and uses shared memory B => VSZ2 = SizeOf(2) + SizeOf(A) + SizeOf(B)
So you'd think that the total memory in use would be VSZ1+VSZ2, but each library is only in memory once so in actual fact it's only VSZ1+SizeOf(2).
I'm unsure that he's adding anything, one line says it all, and your observation really sums up the problem:
But yes, Evolution is a memory hog ;o)