Am Samstag, dem 26.02.2022 um 14:47 +0100 schrieb Jean Abou Samra:
> Le 26/02/2022 à 13:51, Han-Wen Nienhuys a écrit :
> > The Scheme compilation felt much slower, and for C++ ccache takes away
> > a lot of the pain of recompiles. It also appears to be
> > single-threaded? I admit not having timed it in detail. 
> 
> OK, I have very good news regarding compilation speed.
> Tests are done with
> 
> rm -rf out/share/lilypond/current/guile/ && time out/bin/lilypond
> 
> (I have GUILE_AUTO_COMPILE=1 in my environment.)
> 
> * master and Guile 2
> 
> real    0m58,877s
> user    0m58,773s
> sys    0m0,124s
> 
> Execution time on MSDM.ly:
> 
> real    0m18,870s
> user    0m18,727s
> sys    0m0,470s
> 
> 
> * Guile 2, with attached patch disabling all optimizations:

He, I always thought auto-compilation didn't optimize! 😕 now don't
tell me Guile also applies optimizations while just reading and
supposedly interpreting code...

> real    0m16,791s
> user    0m16,700s
> sys    0m0,056s
> 
> Execution time on MSDM.ly:
> 
> real    0m18,702s
> user    0m18,517s
> sys    0m0,509s

[ skipping over the part regarding Guile 3, since I don't think it's
relevant here ]

> For one thing, Guile's optimization make about zero difference for the
> speed of the resulting LilyPond executable. For another, disabling
> optimizations in Guile 2 already results in a good speedup (1min
> to 20s), [...].
> 
> [...]
> 
> What do you think?

Yes, it looks like we should do this! On the patch, I think it would be
better to apply the strategy from module/scripts/compile.scm and just
get all available-optimizations from the concatenation of tree-il-
default-optimization-options and cps-default-optimization-options
instead of hard-coding the list.

Jonas

Attachment: signature.asc
Description: This is a digitally signed message part

              • ... Jean Abou Samra
              • ... Han-Wen Nienhuys
              • ... Jonas Hahnfeld via Discussions on LilyPond development
              • ... Han-Wen Nienhuys
              • ... Jean Abou Samra
              • ... David Kastrup
              • ... Jean Abou Samra
              • ... Luca Fascione
              • ... Han-Wen Nienhuys
              • ... Luca Fascione
              • ... Jonas Hahnfeld via Discussions on LilyPond development
              • ... Jean Abou Samra
              • ... Luca Fascione
              • ... Jean Abou Samra
              • ... Jonas Hahnfeld via Discussions on LilyPond development
              • ... Jean Abou Samra
              • ... Jean Abou Samra
              • ... Jonas Hahnfeld via Discussions on LilyPond development
  • Re: Blockers for Gu... Jean Abou Samra

Reply via email to