[Scummvm-devel] ScummVM 0.12.0: Release status -- 2008-07-13

Marcus Comstedt marcus at mc.pp.se
Tue Jul 15 11:51:43 CEST 2008


Max Horn <max at quendi.de> writes:

> However, that shouldn't stop us from asking whether we can remove some  
> slack in our engines. On my Intel MacBook Pro, with -O and without -g,  
> I got the following "Top 5 Engines", in terms of their size:
>
> #1: 2662916 scumm/libscumm.a (biggest by far, but then it supports  
> lots of games)
> #2: 1791444 kyra/libkyra.a   (clear 2nd place, almost twice as big as  
> the 3rd one -- wonder why...)
> #3:  922020 gob/libgob.a
> #4:  785716 agos/libagos.a
> #5:  703796 parallaction/libparallaction.a

Even without -g, using "ls -l" doesn't give a very exact figure, as it
includes symbol tables and other metadata, but doesn't count BSS
(which is very relevant for the memory footprint).  Using "size" gives a
better indication of how much it will add to a static binary.

Dreamcast build, ls -l:

-rwxrwxr-x   1 marcus   marcus   2312150 Jul 14 14:00 scumm.plg
-rwxrwxr-x   1 marcus   marcus   1476130 Jul 14 14:00 kyra.plg
-rwxrwxr-x   1 marcus   marcus    768356 Jul 14 14:00 gob.plg
-rwxrwxr-x   1 marcus   marcus    717755 Jul 14 14:00 agos.plg
-rwxrwxr-x   1 marcus   marcus    545700 Jul 14 14:00 saga.plg

size:

scumm.plg: 0 + 1708348 + 3052 = 1711400
kyra.plg: 0 + 1096324 + 64701 = 1161025
parallaction.plg: 0 + 323224 + 258060 = 581284
gob.plg: 0 + 580344 + 8 = 580352
cruise.plg: 0 + 162844 + 379380 = 542224

The top two are the same, but parallaction comes up third because of
1/4 megabyte of BSS.  (Ok, I used a dynamic build here, but the
results should be about the same with static libraries.)


  // Marcus






More information about the Scummvm-devel mailing list