The hall of bloat



Hi there guys.  I've been following the Gnome development for a long
time and I am a good advocate of this desktop here in my country
(Colombia).

I write this for two reasons.  First, to congratulate you all for a very
good 2.10 release, it has improvements and refinements all over the
place like every new release.  Second, to give some comparisons results
from Gnome 2.8 and 2.10 about performance and memory consumption using
Fedora Core 3 and Fedora Core 4 Test 2 systems respectively.

The FC4T2 machine (G2.10) is an old Athlon 600MHz computer with 384 MB
of RAM.  The FC3 machine (G2.8) is an Athlon XP 2000MHz computer with
512 MB of RAM. So take the differences into account when reading the
comparison.

First, I configured an standard gnome setup in new accounts, the
standard applets, and a few launchers.  Then I changed the theme for
Clearlooks, the fonts to bitstream and 8 pixels, set a colorful
background, deactivated unneeded services and finally, get rid of the
ugly Redhat Network Applet (rhn) which frees a few megs of RAM.

On both systems the binaries were prelinked to improve start up time and
reduce memory consumption.  Both systems were using the spanish locale.

Here are some results:

				FC4T2		FC3
				-----------	------------
System boot time		1 min 2 sec	1 min 10 sec
Desktop start up time		18 sec		21 sec
Memory usage after login	62 MB		83 MB


The following chart shows the memory consumption by programs as shown by
gnome-system-monitor.  The first value is the virtual memory size and
the value in parenthesis is the resident size.  Both values are in
megabytes.  The first section of the table will show the processes
started by default when you log into gnome which correspond to the
"Memory usage after login" field in the previous table.

		FC4T2 (G2.10)	FC3 (G2.8)
		-------------	----------
X		66.6 (15.0)	91.1 (18.4)
nautilus	38.2 (13.0)	40.0 (16.0)
g-s-m		32.1 (10.8)	22.9 (10.5)
gnome-panel	31.6 (9.9)	22.0 (10.8)
mixer_applet2	22.3 (9.3)	23.7 (10.2)
wnck-applet	21.1 (9.2)	21.1 (9.3)
gnome-session	20.9 (8.5)	23.4 (9.9)
clock-applet	21.2 (8.0)	21.5 (7.9)
g-s-d		19.8 (7.0)	20.7 (7.3)
gconfd-2	10.2 (6.9)	10.4 (6.5)
metacity	13.3 (6.5)	14.7 (6.6)
g-v-m		19.4 (6.4)	20.1 (6.3)

These were the most relevant processes after login which in theory
represents the 62 MB for G2.10 and 83 MB for G2.8.

The following are the memory consumption for some gnome/gtk+ apps.

		FC4T2 (G2.10)	FC3 (G2.8)
		-------------	----------
evolution	75.0 (18.7)	43.5 (17.2)
firefox		95.3 (23.9)	99.5 (22.9)
epiphany	96.4 (20.4)	99.2 (21.6)
gedit		25.4 (12.2)	24.9 (12.3)
gimp		33.4 (26.3)	31.5 (23.2)
evince/gpdf	23.4 (9.7)	22.3 (9.2) [1]
gconf-editor	20.8 (9.3)	20.8 (8.8)
dia		27.7 (14.9)	27.6 (14.8)
planner		25.0 (11.9)	34.5 (14.8)
totem		35.4 (13.5)	121.0 (30.6) [2]
glade-2		23.3 (12.1)	23.7 (11.9)
gnome-terminal	35.7 (11.7)	37.0 (12.0)
gcalctool	21.0 (9.3)	21.1 (9.1)
		-------------	----------
[subtotal]	151.3 MB	181 MB

oowriter	152.9 (51.3)	146 (52.8)
		-------------	----------
[total]		167.8 MB	199 MB

[after closing
 all apps]	81.1 MB		99 MB


[1] evince for FC4 and gpdf for FC3
[2] FC4 uses the GStreamer backend, FC3 uses the totem backend.


These values were obtained just opening the apps without loading any
file or document, eg. firefox and epiphany were configured to load a
blank page by default.

During constant use it was a lot easier to raise memory consumption on
the G2.8 system.  G2.10 was a lot more consistent and it was very
difficult to make the system swap.  For this to happen I had to use
several apps and load many documents (word, pdfs, images, etc.).

You can see that nautilus have improved over the previous version, the
same goes for X and gnome-session.  gnome-panel got a reduction in the
resident size bot got bigger in the virtual memory size.  What does that
mean? What would cause this change in behavior?

I know that the new version of evolution have got some optimizations
that would reduce its memory usage over the previous version when
working with a huge mail box.

The other doubt I have is the difference of memory consumption when I
started the desktop (62 MB), started many apps, and closed all the apps
(81.1).  The difference is 19 MB for G2.10 and 16 MB for G2.8.  What
would that mean? any leakage problem?

The other problems I see are the applets, the clock for example, gets
bigger after using the evo integration going from 21.2 (8.0) to 64.0
(10.4) of virtual and resident size respectively, even evince is
smaller.  The reason for this is that the clock is not simple any more
because it got new features and it integrates very nicely with
evolution.  Any idea about this?  I know Ben Maurer have been suggesting
to change some applets in-process (into gnome-panel) to reduce the
overhead but this is not a very good idea stability wise.

A suggestion of mine (I'm not a C expert) would be to move some applets
(or group them) into some programs, for example, the trashapplet uses 9
MB of resident size which is a lot for such a simple functionality.
Maybe we can save a lot moving the trashapplet into wnck-applet or
creating a new program that would group some applets which have common
functionality.  That way we can get the best of both worlds, a very
stable panel and less independent processes running on the system for
every single applet.

To summarize, we can see a lot of improvements in this new Gnome version
and I am looking forward to the optimizations that will be in G2.12.
I'd really like to see the memory consumption of the standard desktop
reduced from 62 to less than 50 MB.

The other thing I'd really like to see optimized is the desktop startup
speed, like Nat Friedman said in an earlier thread, it takes a very long
time.

Cheers,


-William






[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]