This is the mail archive of the guile@sourceware.cygnus.com mailing list for the Guile project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

Re: startup speed (or lack thereof)



"C. Ray C." <crayc@tomcramer.org> writes:

> To figure out where all the startup time is going

Mostly eaten up by the module system.  With the environment
patches applied it starts up 3.6 times faster.  A fully modularized
guile (which I am currently working on) will start up 15--20 times 
faster than what we have today.

Currently my code boots 10 times faster into the REPL with some module
code written in Scheme.  It|s 1.5 times faster than SCM but still two
times slower than perl.


>  20.00      0.08     0.08   116854     0.68     0.68  scm_getc
>  17.50      0.15     0.07    10957     6.39     7.29  scm_strhash

scm_strhash is unnecessarily called over and over again.  If you
attach the hash value to the symbol itself (which is save because all
symbols must go through scm_symhash) this will also increase
performance.

>+#if 0
>   if (c == '\n')
>     {
>       SCM_INCLINE (port);
>@@ -836,6 +837,7 @@
>     {
>       SCM_INCCOL (port);
>     }
>+#endif

Hmm.  What does that do?


Jost
-- 
Hi! I'm a .signature virus! Copy me into your ~/.signature to help me spread!

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]