[gnome-love] Memory savings with gnome applets in-process



Hi,

I was wondering, why are gnome applets separate applications?

The Memory Reduction team informs [1] that a Hello World application
takes 500kb+ memory. If applets are in-process (i.e, a plugin .so file)
there are lots of memory savings to be had.

For example, if the wanda applet is compiled in-process, the RSS private
dirty memory saving is 1548kb. A few applets, and this saving mounts up.

RSS private dirty usage, out of process mode: 11392 kb.
RSS private dirty usage, in process mode: 9844 kb.

I collected this data using Ben Maurer's smem.pl [2].

I'd also imagine there is a performance improvement, although I haven't
measured that.

Why aren't all applets in-process ?

I realise the disadvantage of if a in-process applet crashes, the whole
panel crashes. But the memory savings are substantial.

--
Craig Keogh

-----------------------------------------------------------------------------

Gnome panel, no wanda applet, out of process mode

VMSIZE:     222952 kb
RSS:         22768 kb total
             12280 kb shared
              1176 kb private clean
              9312 kb private dirty

Gnome panel, with wanda applet, out of process mode:

VMSIZE:     223204 kb
RSS:         24292 kb total
             12952 kb shared
              1868 kb private clean
              9472 kb private dirty

Fish applet itself:

VMSIZE:     177828 kb
RSS:         10044 kb total
              8080 kb shared
                44 kb private clean
              1920 kb private dirty

Gnome panel, no wanda applet, inprocess mode:

VMSIZE:     263116 kb
RSS:         24708 kb total
             12592 kb shared
              2420 kb private clean
              9696 kb private dirty

Gnome panel, with wanda applet, inprocess mode:

VMSIZE:     265468 kb
RSS:         26204 kb total
             13280 kb shared
              3080 kb private clean
              9844 kb private dirty

[1] http://live.gnome.org/MemoryReduction
[2] http://bmaurer.blogspot.com/2006/03/memory-usage-with-smaps.html




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