[rescue] Mozilla Firefox
Charles Shannon Hendrix
shannon at widomaker.com
Thu Apr 22 19:51:37 CDT 2004
Thu, 22 Apr 2004 @ 18:09 -0400, Phil Stracchino said:
> > Now we not only have to deal with copy-cat KDE and Gnome, we have to
> > deal with the latest Gnome wet-dream: Mono, a GPL'd duplication of
> > Microsoft .NET.
>
> ...I wish I thought you were shitting me.
I wish I was.
> 23MB to do that? That's absurd. I can get equivalent functionality to
> that with Links, an Xterm, and a dozen lines of Perl glue code in my
> sirc scripts.
>
> The Gnome developers have completely lost it.
I'm sorry, I was wrong:
shannon 1152 0.0 3.4 17876 8772 ? S Apr21 0:04
/usr/libexec/gweather-applet-2
--oaf-activate-iid=OAFIID:GNOME_GWeatherApplet_Factory --oaf-ior-fd=41
It only takes 17MB. My bad.
Using pmap, a lot of it is shared libraries that a lot of other programs
are using.
However, if you eliminate libraries, you still get a unique memory
mapping in excess of 4MB.
Just imagine how much memory would be taken if we didn't have shared
memory...
> Because that would require the coders to actually think about what they
> were doing on a larger scale then the immediate local couple of hundred
> lines of code?
I can't understand how they figured out some of the other stuff, which
is obviously a lot of work, and yet seem to mess up on relatively easy
algorithms and techniques.
I mean, how hard is it for part of the Gnome startup to validate the
path list, and eliminate all of those which don't exist or which
don't have needed files?
When you change themes, why can't Gnome update a daemon that stores
information about all themed objects?
With modern hardware, themes should be practically free.
> I mean, the LEAST it could do is maintain a list of where it *found*
> everything and pass that list to all the apps.
Exactly.
I misspoke earlier thoug: I meant to say it tried a ton of stat calls to
scan for files. Most of the calls to open() were valid.
At the end of this message is an strace summary of a call to a gnome
program called zenity, a Gnome version of the console dialog program.
You'll notice that the program runs in a tenth of a second. But that is
with no I/O pressure, and it is wasteful regardless.
% strace -cT zenity --info --text 'imahog and urahog'
execve("/usr/bin/zenity", ["zenity", "--info", "--text", "wubbus"], [/* 61 vars */]) = 0
(zenity:24771): Gtk-WARNING **: Invalid icon size -1
% time seconds usecs/call calls errors syscall
------ ----------- ----------- --------- --------- ----------------
20.10 0.020837 16 1340 833 stat64
16.44 0.017036 348 49 write
14.48 0.015007 25 609 22 open
11.93 0.012360 21 590 getdents64
9.02 0.009344 21 447 read
7.63 0.007909 13 588 close
4.10 0.004251 16 267 old_mmap
3.45 0.003573 28 129 munmap
2.96 0.003065 5 585 fstat64
2.94 0.003052 7 460 brk
1.62 0.001679 4 387 fcntl64
1.33 0.001374 172 8 writev
0.92 0.000953 23 42 13 access
0.57 0.000586 10 61 mprotect
0.56 0.000580 580 1 rename
0.54 0.000562 187 3 1 unlink
0.36 0.000372 186 2 1 connect
0.27 0.000275 275 1 link
0.14 0.000143 9 16 poll
0.12 0.000124 62 2 readv
0.08 0.000084 21 4 2 lstat64
0.07 0.000075 38 2 socket
0.07 0.000070 6 11 ioctl
0.06 0.000062 6 10 uname
0.05 0.000051 5 10 gettimeofday
0.04 0.000041 41 1 shmget
0.03 0.000031 6 5 _llseek
0.03 0.000029 4 7 getpid
0.03 0.000027 27 1 shmat
0.01 0.000014 14 1 _sysctl
0.01 0.000013 4 3 rt_sigaction
0.01 0.000012 4 3 getuid32
0.01 0.000009 5 2 getrlimit
0.01 0.000008 4 2 geteuid32
0.01 0.000008 8 1 getresuid32
0.01 0.000007 7 1 time
0.01 0.000006 6 1 shmctl
0.00 0.000005 5 1 setrlimit
0.00 0.000004 4 1 rt_sigprocmask
0.00 0.000004 4 1 getresgid32
------ ----------- ----------- --------- --------- ----------------
100.00 0.103642 5655 872 total
--
shannon "AT" widomaker.com -- ["There are nowadays professors of
philosophy, but not philosophers." ]
More information about the rescue
mailing list