Re: LilyPond 2.25.14

2024-03-24 Thread Jonas Hahnfeld via Discussions on LilyPond development
On Sat, 2024-03-23 at 18:18 -0700, Aaron Hill wrote:
> On 2024-03-23 6:25 am, Jonas Hahnfeld wrote:
> > We are happy to announce the release of LilyPond 2.25.14. This is
> > termed a development release, but these are usually reliable for
> > testing new features and recent bug fixes. However, if you require
> > stability, we recommend using version 2.24.3, the current stable
> > release.
> > Please refer to the Installing section in the Learning Manual for
> > instructions how to set up the provided binaries:
> > https://lilypond.org/doc/v2.25/Documentation/learning/installing
> 
> 
> /opt/lilypond/2.25.14/bin/lilypond: /lib/x86_64-linux-gnu/libc.so.6: 
> version `GLIBC_2.28' not found (required by 
> /opt/lilypond/2.25.14/bin/lilypond)
> 
> 
> Something changed from .13 to .14?  I'm presuming my system is just 
> out-of-date, and this might be expected.

Yes, 2.25.14 is built in Alma Linux 8 instead of CentOS 7 which raises
the glibc requirement. I didn't mention it in the release email because
I thought it wouldn't make a practical difference as outlined in
https://lists.gnu.org/archive/html/lilypond-devel/2024-02/msg00052.html
Which distribution are you running?

Jonas


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


Re: LilyPond 2.25.14

2024-03-24 Thread Aaron Hill

On 2024-03-24 1:23 am, Jonas Hahnfeld wrote:

On Sat, 2024-03-23 at 18:18 -0700, Aaron Hill wrote:

On 2024-03-23 6:25 am, Jonas Hahnfeld wrote:
> We are happy to announce the release of LilyPond 2.25.14. This is
> termed a development release, but these are usually reliable for
> testing new features and recent bug fixes. However, if you require
> stability, we recommend using version 2.24.3, the current stable
> release.
> Please refer to the Installing section in the Learning Manual for
> instructions how to set up the provided binaries:
> https://lilypond.org/doc/v2.25/Documentation/learning/installing


/opt/lilypond/2.25.14/bin/lilypond: /lib/x86_64-linux-gnu/libc.so.6:
version `GLIBC_2.28' not found (required by
/opt/lilypond/2.25.14/bin/lilypond)


Something changed from .13 to .14?  I'm presuming my system is just
out-of-date, and this might be expected.


Yes, 2.25.14 is built in Alma Linux 8 instead of CentOS 7 which raises
the glibc requirement. I didn't mention it in the release email because
I thought it wouldn't make a practical difference as outlined in
https://lists.gnu.org/archive/html/lilypond-devel/2024-02/msg00052.html
Which distribution are you running?



The error occurred from my WSL1 environment running Ubuntu 18.04.  
Probably my own fault for keeping bionic around.


I do have Ubuntu 20.04 under WSL2.  I can confirm 2.25.14 runs under 
focal without complaining about glibc.


Based on the email thread you linked, perhaps I should nuke all my WSL 
distros at this point and start from scratch with the latest Ubuntu (22, 
I gather).  Not sure if Alma is an option for WSL.



-- Aaron Hill



Re: LilyPond 2.25.14

2024-03-24 Thread Jonas Hahnfeld via Discussions on LilyPond development
On Sun, 2024-03-24 at 03:20 -0700, Aaron Hill wrote:
> The error occurred from my WSL1 environment running Ubuntu 18.04.  
> Probably my own fault for keeping bionic around.

Ah ok; yes, Ubuntu 18.04 is end-of-life since last year already, so I
didn't check its versions.

> I do have Ubuntu 20.04 under WSL2.  I can confirm 2.25.14 runs under 
> focal without complaining about glibc.

Good.

> Based on the email thread you linked, perhaps I should nuke all my WSL 
> distros at this point and start from scratch with the latest Ubuntu (22, 
> I gather).  Not sure if Alma is an option for WSL.

You don't need Alma, the binaries should run on any distribution that
is newer than that. Ubuntu is perfectly fine, and likely better tested
with WSL (but I don't have experience with it myself).

Jonas


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


Re: LilyPond 2.25.14

2024-03-24 Thread Jonas Hahnfeld via Discussions on LilyPond development
On Sat, 2024-03-23 at 14:24 -0500, Karlin High wrote:
> On 3/23/2024 2:00 PM, Jonas Hahnfeld wrote:
> > Would be interesting to see how this compares to the "vanilla" package
> 
> I tried it, 3 runs. First one maybe unfair because font cache 
> initialization or something.
> 
> real0m48.643s
> user0m0.000s
> sys 0m0.031s
> 
> real0m31.457s
> user0m0.015s
> sys 0m0.000s
> 
> real0m31.591s
> user0m0.000s
> sys 0m0.031s
> 
> The another with the JIT version:
> 
> real0m32.319s
> user0m0.000s
> sys 0m0.030s
> 
> But I expect I should get the computer otherwise idle as far as possible 
> for this. I had other software running, but nothing with heavy loads.

Thanks for testing! Not as good as I had hoped, but also not (much)
worse than before...


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


Re: LilyPond 2.25.14

2024-03-24 Thread Jonas Hahnfeld via Discussions on LilyPond development
On Sat, 2024-03-23 at 14:08 -0700, Kenneth Wolcott wrote:
> Hi Jonas;
> 
>   I hope that the following information is useful:
> 
> Lilypond performance stats for the engraving of one very small and one
> medium sized pieces
> 
> native = Apple Silicon build
> foreign = x86_64
> other = MacPorts LP 2.24.3
> 
> ~/Downloads/native_lilypond-2.25.14/bin/lilypond
> ./Danny_Boy_updated.ly  0.53s user 0.06s system 87% cpu 0.683 total
> ~/Downloads/foreign_lilypond-2.25.14/bin/lilypond
> ./Danny_Boy_updated.ly  0.93s user 0.09s system 101% cpu 1.010 total
> /opt/local/bin/lilypond ./Danny_Boy.ly  0.48s user 0.06s system 104%
> cpu 0.515 total
> 
> ~/Downloads/native_lilypond-2.25.14/bin/lilypond
> ./Waltz_Nr2_updated.ly  1.07s user 0.10s system 102% cpu 1.145 total
> ~/Downloads/foreign_lilypond-2.25.14/bin/lilypond
> ./Waltz_Nr2_updated.ly  1.76s user 0.15s system 100% cpu 1.907 total
> /opt/local/bin/lilypond ./Waltz_Nr2.ly  1.06s user 0.12s system 103%
> cpu 1.140 total
> 
> for i in ./Danny_Boy.ly ./Danny_Boy_updated.ly ./Waltz_Nr2.ly
> ./Waltz_Nr2_updated.ly
> for> do
> for> wc $i
> for> done
>  232 8144641 ./Danny_Boy.ly
>  232 8144642 ./Danny_Boy_updated.ly
>  9393892   19981 ./Waltz_Nr2.ly
>  9393892   19982 ./Waltz_Nr2_updated.ly

Great, winning more than a factor 1.5x compared to the x86_64 binaries
sounds reasonable 🙂


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


Re: LilyPond 2.25.14

2024-03-24 Thread Jonas Hahnfeld via Discussions on LilyPond development
On Sat, 2024-03-23 at 23:03 +0100, Michael Käppler wrote:
> Hi Jonas,
> thanks for working on this!
> 
> > Windows build with Guile JIT: https://cloud.hahnjo.de/s/Ek5x9rybpiPNtoj
> > This turns on just-in-time compilation that was added in Guile 3.0, but
> > we had to keep disabled on Windows until now. Please test, especially
> > on larger scores where this should provide a performance advantage.
> 
> I gave it a try with a medium-sized score (appr. 60 pages A4),
> 10 times in a row:
> 
> with JIT:
> real    4m42.513s
> user    0m0.090s
> sys 0m0.185s
> 
> without JIT:
> real    4m45.295s
> user    0m0.046s
> sys 0m0.277s

Thanks for testing on a larger score!

> Just out of interest, do we tweak the JIT_THRESHOLD somewhere or do we
> use the default value?

I don't think we change it from LilyPond, so likely using the default
value.

Jonas


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


Re: LilyPond 2.25.14

2024-03-24 Thread Aaron Hill

On 2024-03-24 3:45 am, Jonas Hahnfeld wrote:

On Sun, 2024-03-24 at 03:20 -0700, Aaron Hill wrote:

Based on the email thread you linked, perhaps I should nuke all my WSL
distros at this point and start from scratch with the latest Ubuntu 
(22,

I gather).  Not sure if Alma is an option for WSL.


You don't need Alma, the binaries should run on any distribution that
is newer than that. Ubuntu is perfectly fine, and likely better tested
with WSL (but I don't have experience with it myself).



Yeah, Ubuntu has been the de facto default for WSL, as it was my 
understanding that Canonical and Microsoft teamed up to create the 
original WSL project.


Interestingly, it turns out Alma is a supported WSL distro (8 and 9 are 
both in the Windows Store).



-- Aaron Hill



Re: LilyPond 2.25.14

2024-03-24 Thread Michael Käppler via Discussions on LilyPond development




Am 24.03.2024 um 11:50 schrieb Jonas Hahnfeld:

Just out of interest, do we tweak the JIT_THRESHOLD somewhere or do we
use the default value?

I don't think we change it from LilyPond, so likely using the default
value.

I did a test with the opposite extremes.
Again, 10 subsequent runs with the score I tested before.
Note that the times are not quite comparable with my last findings,
because my laptop
ran on a different energy saving state.

GUILE_JIT_THRESHOLD=0 (compile each function at first sight)
real    4m8.780s
user    0m0.075s
sys 0m0.167s

GUILE_JIT_THRESHOLD=-1 (disable JIT compilation)
real    4m4.925s
user    0m0.030s
sys 0m0.136s

So either the env variable is not working as intended, or there is only
a very small effect.
At least setting `GUILE_JIT_LOG` does work, but one would have to read
the source
to understand the output.

Michael