BuildSizes
From Gnash Project Wiki
Static and dynamic memory consumption of various Gnash builds
Runtime memory footprint
Memory footprint of standalone Gnash running Bruno Bozzetto's Yes & No
Test version: Gnash CVS from March 2007 (or maybe cvs20060909?) configured with
--disable-plugin --disable-debugger --enable-sound=no
| Render-GUI | VSIZ | RSS | SHR |
| agg-gtk | 33372k | 14m | 8948k |
| agg-sdl | 26564k | 9396k | 5124k |
| agg-fltk | 24556k | 8992k | 4220k |
| cairo-fltk | 184m | 128m | 4284k |
| cairo-gtk | 192m | 133m | 8000k |
| cairo-sdl | 187m | 129m | 5256k |
| opengl-gtk | 62620k | 15m | 9336k |
| opengl-sdl | 54932 | 10m | 5324 |
- VSIZ = Virtual memory size, the total amount Gnash has requested from the OS
- RSS = Resident Set Size, the amount of physical RAM Gnash is actually using
- SHR = Shared Memory, indicative of the code size.
The most memory-economical combination is AGG-FLTK at 24MB VRAM, 9MB swapped in (the current agg-fb, not tested here, should be even smaller.)
Cairo VSIZ hovered around 50MB during most of the movie but bloated out to 190MB during the creation and moving of hundreds of small objects.
Last measured some time before 25 Mar 2007.
Static code size of gnash components
Or "Where's the text bloat?"
text data/bss
libgnashgeo: 66538 916
libgnashgui: agg-fb 36280 1108
agg-gtk 75247 2112
agg-sdl 32597 1256
cairo-gtk 69035 2096
cairo-sdl 31386 1252
opengl-gtk 70067 2192
opengl-kde 50879 2280
opengl-sdl 30892 1236
libgnashserver: 1613300 19504 Contains asobjs, parser, vm
libgnashasobjs: 589994 10872
libgnashamf: 42936 952
libgnashbackend:
agg-fb 531987 6244
agg-fltk 531991 6244
agg-gtk 531987 6244
agg-sdl 532005 6244
cairo-fltk 45505 1452
cairo-gtk 45624 1508
cairo-kde 45503 1452
cairo-sdl 45519 1460
opengl-gtk 49682 1592
opengl-kde 49561 1536
opengl-sdl 49577 1544
libgnashplugin: ?
libklashpart: ?
gnash: ~19k ~16k
gparser: 20.8k 947
gprocessor: 15.5k 960
In brief:
- Most of the code size is in the device-independent parts of Gnash.
- The smallest render-GUI combination is cairo-sdl, with opengl-sdl a close second.
- Using AGG adds half a megabyte of code to Gnash, roughly a quarter of the total. This can be greatly reduced by configuring --with-pixelformat= (see configure --help).

