Andreas Kupries: The following is a mail from Christian Wegehaupt, placed here with his permission. Right now I will just place it into the wiki, formatting and cleaning up the english and style will come later.
Hi Jeff!
There are lot of discussions within CLT on "enhancing" Tcl by Qt, OO-packages w/c++ etc. etc.
All the experts forget a MEMORY FOOTPRINT calculation.
Let's compare...
O.K., I know that the different packages might use different memory allocation strategies etc., but comparing the packages as shipped or compiled by default is, what's the enduser is seeing...
Test system: ATHLON 500, SuSE6.3, Linux_2.2.18, egcs-2.91.66, X -bpp 16
1. Everybody knows Tk's "floorplan" and the "top" command:
APPLICATION "floorplan" | memory in KB |
---|---|
wish4.2 ->demo/widget/floorplan | 2188 |
wish8.0.5 ->demo/widget/floorplan | 2992 |
wish8.4a2 ->demo/widget/floorplan | 3076 |
perl-5.004/pTK "widget" demo as shipped /w SuSE 6.3 | 7063 |
python1.5 wish.py tk8.0.5 -> demo/widget/floorplan | 4584 |
python2.0 wish.py tk8.4a2 -> demo/widget/floorplan only tkinter compiled in w/o "-g" | 3860 |
MY conclusions:
2. Lets compare Mesa's "gears"
All programs are doing the same OpenGL-calls generating the "gears" while the user interface is different. For comparsion the screen-size is reduced to 300x300. (SDL = Simple DirectMedia Library)
APPLICATION "gears" | memory in KB |
---|---|
Mesa-3.4-glut3.7 | 2626 |
Mesa-3.4-SDL-1.1.7 SDLgears-1.0.2.tar.gz from http://www.libsdl.org/opengl/ | 2044 |
qt-2.2.1-Mesa-3.4 (/usr/local/qt-2.2.1/examples/gear) | 5392 |
Tcl/Tk8.4a2/frustum0.1-Mesa-3.4 | 4400 |
MY conclusions:
3. Some other REAL LIFE applications
APPLICATION | Memory in KB |
---|---|
vtk /w Tcl/Tk 8.0.5 SuSE6.3 (OO and c++) | 16876 after start |
gracer0.1.5[L1 ] /w Tcl/Tk 8.0.5 Mesa-3.4 | 3572 after start |
tkgate1.5p2 /w Tcl/Tk 8.4a2 | 3452 after start |
iwidgets3.0.1/demos/watch Tcl/Tk 8.4a2 | 3248 |
hv (Hipps HTML Viewer tkhtml) | 2372 after start |
BrowseX 1.0.28 /w Tcl/Tk 8.3 img1.2.4, tkhtml .... | 4380 after start |
BrowseX 1.2.1 /w Tcl/Tk 8.3 | 5664 after start |
netscape 4.7 | 13224 after start |
Tcl/Tk 8.3 application /w BLT,memchan and a "listbox" loaded /w 86855 lines | 10924 |
voodoo /w Tcl/Tk 8.3 (C++/Tcl application) after loading a 59-object diagram (tested on AMD K6-II 400, 128 MB RAM, Debian woody, g++ 2.95.3) | 4624 |
MY RESULTS:
Happy New Year!
Christian Wegehaupt
Other notes:
-- BGE