This is the mail archive of the
guile@sourceware.cygnus.com
mailing list for the Guile project.
Re: startup speed (or lack thereof)
- To: "C. Ray C." <crayc at tomcramer dot org>
- Subject: Re: startup speed (or lack thereof)
- From: "Greg J. Badros" <gjb at cs dot washington dot edu>
- Date: 17 Mar 2000 08:40:24 -0800
- Cc: guile at sourceware dot cygnus dot com
- References: <20000316174525.A22146@206.31.63.15>
"C. Ray C." <crayc@tomcramer.org> writes:
> To figure out where all the startup time is going, I compiled with
> profiling enabled (CFLAGS="-O2 -pg" ./configure --disable-shared) and
> ran guile -c '(quit)'. Here are some of the results:
>
> % cumulative self self total
> time seconds seconds calls us/call us/call name
> 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
> 10.00 0.19 0.04 17703 2.26 2.26 scm_ungetc
<snip>
I long ago had patches to make scm_getc and some other stuff inline, but
it got held up being integrated because of uncertainty about how to
handle ANSI C compilers that weren't gcc and don't support proper
inlining.
The changes are fairly obvious (but I'm sure my patches are no longer
any good as the code base has changed dramatically), but the effects on
other compilers need to be checked carefully before it'll get in.
Greg