[Ecls-list] How to save 45kb?

Juan Jose Garcia-Ripoll jjgarcia at users.sourceforge.net
Wed Apr 30 10:45:27 UTC 2008


Do what your compiler does not for you :-)

I had some fun yesterday night coding three critical routines APPLY,
APPLY_fixed and APPLY_closure, using Intel/32bits assembler. The
results are amazing in the OSX platform, with savings of 45kb in code
size, while the impact on performance still has to be determined, but
it does not seem to harm.

Before:

$ size /Users/jjgarcia/lib/libecl.dylib
__TEXT  __DATA  __OBJC  others  dec     hex
1232896 90112   0       2719744 4042752 3db000

real time : 804.708 secs # Running Dietz's suite without small conses
run time  : 484.039 secs
gc count  : 522 times
consed    : 7844017924 bytes

Now:

$ size libecl.dylib
__TEXT  __DATA  __OBJC  others  dec     hex
1187840 90112   0       2719744 3997696 3d0000

real time : 686.760 secs   # Running Dietz's suite without small conses
run time  : 476.889 secs
gc count  : 530 times
consed    : 7854708604 bytes

-- 
Facultad de Fisicas, Universidad Complutense,
Ciudad Universitaria s/n Madrid 28040 (Spain)
http://juanjose.garciaripoll.googlepages.com




More information about the ecl-devel mailing list