[Ecls-list] Startup time
lisp at arrakis.es
Tue Jul 26 12:37:03 UTC 2005
> ECL's startup time is unacceptably big for me (on target machine it
> starts for about a minute between shell command and REPL prompt,
I have fixed this to a great extent. In CVS, the code takes between 150
and 350 ms in my slow laptop to start up.
> I couldn't figure out how could I decrease startup time -- I thought
> about using some pre-initialized data hard-coded into fasls instead of
> (read) and re-constructing them each time but at the moment I can't
> figure out how could I do this.
The problem is that what takes the most time is the creation of classes.
Currently we have no way to externalize classes, nor methods (this would
be indeed difficult, given that they should point to the binary code).
However most of the time was spent in the subtypep routine. With the
latest improvements this time is greatly reduced.
> Do you have any tips on what should be done to speed the
> initialisation up, how may I start? Or maybe this kind of
> initialization is unavoidable and I should rather focus on adapting
> some checkpointing code and just restore the running process?
Try building a profiled image using "-p -pg" in CFLAGS and LDFLAGS. This
gives you an idea of where time is spent. Currently I see no major
> By the way -- can you give me some guide to compiler code (the proper
> compiler, cmp package) -- what are the pieces, how do they fit
Maybe as time permits. I am currently off-shore and with slow modem
connection. When I come back I should write something in the Wiki. Please
remind me by tuesday if I did not do so.
More information about the ecl-devel