Re: LilyPond 2.25.14
On 2024-03-23 6:25 am, Jonas Hahnfeld via Discussions on LilyPond development 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. -- Aaron Hill
Re: LilyPond 2.25.14
On 23 Mar 2024, at 17:55, Karlin High wrote:On 3/23/2024 11:39 AM, Robin Bannister wrote:I have nothing large.The attached zip folder is what I used in the previous post. It was derived from a post by Vaughan McAlley in 2016, updated via convert-ly to the version in question here.It looks like back in 2016, on the same computer I now have, LilyPond 2.19.46 was taking 1 min 4 seconds for it.Congrats on the speed-up, developers!-- Karlin HighMissouri, USA<> Jonas,I ran this same file my Apple M1 MacBook Pro 2021 againstMacPorts lilypond-devel (which is still at 2.25.13) aarch64 buildaikebah@rajah MSDM % time (lilypond MSDM.ly 2> /dev/null ) ( lilypond MSDM.ly 2> /dev/null; ) 15.78s user 2.27s system 100% cpu 17.994 total aikebah@rajah MSDM % time (lilypond MSDM.ly 2> /dev/null ) ( lilypond MSDM.ly 2> /dev/null; ) 15.80s user 2.27s system 100% cpu 18.012 total aikebah@rajah MSDM % time (lilypond MSDM.ly 2> /dev/null ) ( lilypond MSDM.ly 2> /dev/null; ) 15.80s user 2.29s system 100% cpu 18.017 total aikebah@rajah MSDM % lilypond -v GNU LilyPond 2.25.13 (running Guile 2.2)Your aarch64 build of 2.25.14aikebah@rajah MSDM % time (../lilypond-2.25.14/bin/lilypond MSDM.ly 2> /dev/null ) ( ../lilypond-2.25.14/bin/lilypond MSDM.ly 2> /dev/null; ) 17.07s user 2.20s system 99% cpu 19.340 total aikebah@rajah MSDM % time (../lilypond-2.25.14/bin/lilypond MSDM.ly 2> /dev/null ) ( ../lilypond-2.25.14/bin/lilypond MSDM.ly 2> /dev/null; ) 17.06s user 2.18s system 99% cpu 19.307 total aikebah@rajah MSDM % time (../lilypond-2.25.14/bin/lilypond MSDM.ly 2> /dev/null ) ( ../lilypond-2.25.14/bin/lilypond MSDM.ly 2> /dev/null; ) 17.19s user 2.19s system 99% cpu 19.478 totalaikebah@rajah MSDM % ../lilypond-2.25.14/bin/lilypond -v GNU LilyPond 2.25.14 (running Guile 3.0)Standard published x64 MacOS Build for 2.25.14aikebah@rajah MSDM % time ( ../lilypond-2.25.14x64/bin/lilypond MSDM.ly 2>/dev/null )( ../lilypond-2.25.14x64/bin/lilypond MSDM.ly 2> /dev/null; ) 27.69s user 2.48s system 99% cpu 30.456 totalaikebah@rajah MSDM % time ( ../lilypond-2.25.14x64/bin/lilypond MSDM.ly 2>/dev/null )( ../lilypond-2.25.14x64/bin/lilypond MSDM.ly 2> /dev/null; ) 27.60s user 2.42s system 99% cpu 30.280 totalaikebah@rajah MSDM % time ( ../lilypond-2.25.14x64/bin/lilypond MSDM.ly 2>/dev/null )( ../lilypond-2.25.14x64/bin/lilypond MSDM.ly 2> /dev/null; ) 27.94s user 2.43s system 99% cpu 30.661 totalaikebah@rajah MSDM % ../lilypond-2.25.14x64/bin/lilypond -v GNU LilyPond 2.25.14 (running Guile 3.0)A clear improvement over running the x64 build using Rosetta and slightly slower than the 2.25.13 Guild 2.2 build of MacPorts
Re: LilyPond 2.25.14
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 Just out of interest, do we tweak the JIT_THRESHOLD somewhere or do we use the default value? Michael
Re: LilyPond 2.25.14
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 Ken Wolcott On Sat, Mar 23, 2024 at 12:09 PM Jonas Hahnfeld wrote: > > On Sat, 2024-03-23 at 11:39 -0700, Kenneth Wolcott wrote: > > Hi Jonas; > > > > I've tried engraving a couple of randomly chosen previous engravings > > (using LP 2.24.x) using the new LP 2.25.14 version on my Mac (Apple > > Silicon). > > > > Since none of my engravings are large, most of them are one to two > > pages in length, I thought there would be no noticable decrease in > > engraving time, but I was wrong! It IS noticably faster for even > > small files :-) > > > > One thing I noticed is what one of my engravings had significant > > change in apperance in the second and third page, as if I had inserted > > a forced page break in two or three places. There were no conversion > > errors or warnings in any of my engravings. > > > > I don't know what was the cause of the speedup, but it is > > appreciated! I have been using the MacPorts version of Lilypond 2.24.3 > > compared to this recent test release. > > Thanks for testing! The performance advantage probably comes from Guile > 3.0 in our binaries of 2.25.14 versus Guile 2.2 with the MacPorts > version, having a faster startup time which matters especially for > smaller files. If you have some time, I would be really interested in > seeing a comparison with LilyPond 2.25.14 from > https://gitlab.com/lilypond/lilypond/-/packages/23923980 when the > x86_64 executable is run through Rosetta on Apple Silicon... > > Jonas
Re: LilyPond 2.25.14
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. -- Karlin High Missouri, USA
Re: LilyPond 2.25.14
On Sat, 2024-03-23 at 11:39 -0700, Kenneth Wolcott wrote: > Hi Jonas; > > I've tried engraving a couple of randomly chosen previous engravings > (using LP 2.24.x) using the new LP 2.25.14 version on my Mac (Apple > Silicon). > > Since none of my engravings are large, most of them are one to two > pages in length, I thought there would be no noticable decrease in > engraving time, but I was wrong! It IS noticably faster for even > small files :-) > > One thing I noticed is what one of my engravings had significant > change in apperance in the second and third page, as if I had inserted > a forced page break in two or three places. There were no conversion > errors or warnings in any of my engravings. > > I don't know what was the cause of the speedup, but it is > appreciated! I have been using the MacPorts version of Lilypond 2.24.3 > compared to this recent test release. Thanks for testing! The performance advantage probably comes from Guile 3.0 in our binaries of 2.25.14 versus Guile 2.2 with the MacPorts version, having a faster startup time which matters especially for smaller files. If you have some time, I would be really interested in seeing a comparison with LilyPond 2.25.14 from https://gitlab.com/lilypond/lilypond/-/packages/23923980 when the x86_64 executable is run through Rosetta on Apple Silicon... Jonas signature.asc Description: This is a digitally signed message part
Re: LilyPond 2.25.14
On Sat, 2024-03-23 at 11:41 -0500, Karlin High wrote: > On 3/23/2024 10:02 AM, Jonas Hahnfeld via LilyPond user discussion wrote: > > 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. > > Carver MSDM.ly, subject of many past performance-test posts. > > Inte Core i5-3450 > 24 GB RAM > Windows 10 22H2 > > real 0m32.109s > user 0m0.000s > sys 0m0.015s Would be interesting to see how this compares to the "vanilla" package here: https://gitlab.com/lilypond/lilypond/-/packages/23923980 ... But I guess I can also do this test on my end since the score is public. signature.asc Description: This is a digitally signed message part
Re: multipart choral music - disable barlines between staves when using GrandStaff within ChoirStaff
Thanks, i haven't been using lilypond for a while, and forgot even the basic things like these. On Saturday, 23 March, 2024 at 07:48:32 pm IST, David Wright wrote: On 2024-03-23 2:12 am, Eby Mani wrote: > Two questions. > 1, How do i set instrument names as per attached "example_1" picture. > > 2, example_1 - How do i disable connecting barlines between staves when > using PianoStaff or GrandStaff within ChoirStaff. You could also replace r1 with R1 in order to centre your whole measure rests. Cheers, David.
Re: LilyPond 2.25.14
Hi Jonas; I've tried engraving a couple of randomly chosen previous engravings (using LP 2.24.x) using the new LP 2.25.14 version on my Mac (Apple Silicon). Since none of my engravings are large, most of them are one to two pages in length, I thought there would be no noticable decrease in engraving time, but I was wrong! It IS noticably faster for even small files :-) One thing I noticed is what one of my engravings had significant change in apperance in the second and third page, as if I had inserted a forced page break in two or three places. There were no conversion errors or warnings in any of my engravings. I don't know what was the cause of the speedup, but it is appreciated! I have been using the MacPorts version of Lilypond 2.24.3 compared to this recent test release. Thanks to all who have made this an awesome product! Ken Wolcott On Sat, Mar 23, 2024 at 10:20 AM Kenneth Wolcott wrote: > > WOW!!! Apple Silicon support!!! > > On Sat, Mar 23, 2024 at 8:03 AM Jonas Hahnfeld via LilyPond user > discussion wrote: > > > > On Sat, 2024-03-23 at 14:25 +0100, 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. > > > > Following this release, I made two special builds with the changes > > proposed in https://gitlab.com/lilypond/lilypond/-/merge_requests/2283 > > that would be great to get more widespread testing: > > > > Native Apple Silicon build: https://cloud.hahnjo.de/s/x9D62eASSn6Ng7D > > This is a native arm64 version for macOS 12+; if you have a Mac, please > > test and (hopefully) confirm the performance advantage over running the > > x86_64 build via Rosetta 2 > > > > 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. > > > > Cheers > > Jonas >
Re: Compress Long Rest in Jianpu.
> I want to display both staff and jianpu, but if I enable > \compressMMRests function, the long rests are not compressed when > engraving with jianpu. > > Jianpu support for Lilypond is from file jiapu10a.ly on > https://github.com/nybbs2003/lilypond-Jianpu . Is there any way to > patch the file or something to make it support \compressMMRests? > > MWE is in the attachment. Do you have a real-world example how compressed rests look like in Jianpu notation? I guess the author hasn't thought of that... Werner
Re: LilyPond 2.25.14
On 3/23/2024 11:39 AM, Robin Bannister wrote: I have nothing large. The attached zip folder is what I used in the previous post. It was derived from a post by Vaughan McAlley in 2016, updated via convert-ly to the version in question here. It looks like back in 2016, on the same computer I now have, LilyPond 2.19.46 was taking 1 min 4 seconds for it. Congrats on the speed-up, developers! -- Karlin High Missouri, USA <>
Re: LilyPond 2.25.14
Jonas Hahnfeld via LilyPond user discussion wrote: 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. GNU LilyPond 2.25.14 (running Guile 3.0) Processing `3.ly' Parsing... Interpreting music... Interpreting music...[8][16][24][32][40][48][56][64][72][80][88][96][104] Preprocessing graphical objects... MIDI output to `3.mid'... Finding the ideal number of pages... Fitting music on 3 or 4 pages... Drawing systems... Converting to `3.pdf'... Success: compilation successfully completed No problem here on Win7, but I have nothing large. N.B. the log doesn't mention JIT mode. Cheers, Robin
Re: LilyPond 2.25.14
On 3/23/2024 10:02 AM, Jonas Hahnfeld via LilyPond user discussion wrote: 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. Carver MSDM.ly, subject of many past performance-test posts. Inte Core i5-3450 24 GB RAM Windows 10 22H2 real 0m32.109s user 0m0.000s sys 0m0.015s -- Karlin High Missouri, USA
Re: LilyPond 2.25.14
WOW!!! Apple Silicon support!!! On Sat, Mar 23, 2024 at 8:03 AM Jonas Hahnfeld via LilyPond user discussion wrote: > > On Sat, 2024-03-23 at 14:25 +0100, 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. > > Following this release, I made two special builds with the changes > proposed in https://gitlab.com/lilypond/lilypond/-/merge_requests/2283 > that would be great to get more widespread testing: > > Native Apple Silicon build: https://cloud.hahnjo.de/s/x9D62eASSn6Ng7D > This is a native arm64 version for macOS 12+; if you have a Mac, please > test and (hopefully) confirm the performance advantage over running the > x86_64 build via Rosetta 2 > > 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. > > Cheers > Jonas
Re: LilyPond 2.25.14
On Sat, 2024-03-23 at 14:25 +0100, 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. Following this release, I made two special builds with the changes proposed in https://gitlab.com/lilypond/lilypond/-/merge_requests/2283 that would be great to get more widespread testing: Native Apple Silicon build: https://cloud.hahnjo.de/s/x9D62eASSn6Ng7D This is a native arm64 version for macOS 12+; if you have a Mac, please test and (hopefully) confirm the performance advantage over running the x86_64 build via Rosetta 2 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. Cheers Jonas signature.asc Description: This is a digitally signed message part
Re: multipart choral music - disable barlines between staves when using GrandStaff within ChoirStaff
On 2024-03-23 2:12 am, Eby Mani wrote: > Two questions. > 1, How do i set instrument names as per attached "example_1" picture. > > 2, example_1 - How do i disable connecting barlines between staves when > using PianoStaff or GrandStaff within ChoirStaff. You could also replace r1 with R1 in order to centre your whole measure rests. Cheers, David.
LilyPond 2.25.14
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 signature.asc Description: This is a digitally signed message part
Compress Long Rest in Jianpu.
Greetings Lilypond users: I want to display both staff and jianpu, but if I enable \compressMMRests function, the long rests are not compressed when engraving with jianpu. Jianpu support for Lilypond is from file jiapu10a.ly on https://github.com/nybbs2003/lilypond-Jianpu . Is there any way to patch the file or something to make it support \compressMMRests? MWE is in the attachment. Sincerely, Windy test.ly Description: Binary data
Re: multipart choral music - disable barlines between staves when using GrandStaff within ChoirStaff
Many thanks, Aaron, exactly what i was looking for. Is this on LSR ?. On Saturday, 23 March, 2024 at 03:17:06 pm IST, Aaron Hill wrote: On 2024-03-23 2:12 am, Eby Mani wrote: > Two questions. > 1, How do i set instrument names as per attached "example_1" picture. > > 2, example_1 - How do i disable connecting barlines between staves when > using PianoStaff or GrandStaff within ChoirStaff. This is not the complete scenario with all voices and lyrics, but it should give you the general idea: 1. Use the ChoirStaff which already omits the SpanBar. 2. Change the delimiter to the brace, like the GrandStaff (or PianoStaff). 3. Apply an instrument name to the group of related voices to get its label shown between the individual voices. \version "2.25.13" startBrace = \with { systemStartDelimiter = #'SystemStartBrace } notes = { \repeat unfold 5 { b'4 8 8 2 | 4. 8 2 } | 1 \fine } \new ChoirStaff << \new ChoirStaff \with { \startBrace instrumentName = "Soprano" shortInstrumentName = "S." } << \new Staff = sopranoI \with { instrumentName = "I" shortInstrumentName = "I" } \notes \new Staff = sopranoII \with { instrumentName = "II" shortInstrumentName = "II" } \notes >> \new ChoirStaff \with { \startBrace instrumentName = "Alto" shortInstrumentName = "A." } << \new Staff = altoI \with { instrumentName = "I" shortInstrumentName = "I" } \notes \new Staff = altoII \with { instrumentName = "II" shortInstrumentName = "II" } \notes >> >> NOTE: If you do need to use a GrandStaff (or PianoStaff), you can remove the Span_bar_engraver similar to what the ChoirStaff already does: \new PianoStaff \with { \remove Span_bar_engraver } { . . . } -- Aaron Hill
Re: multipart choral music - disable barlines between staves when using GrandStaff within ChoirStaff
On 2024-03-23 2:12 am, Eby Mani wrote: Two questions. 1, How do i set instrument names as per attached "example_1" picture. 2, example_1 - How do i disable connecting barlines between staves when using PianoStaff or GrandStaff within ChoirStaff. This is not the complete scenario with all voices and lyrics, but it should give you the general idea: 1. Use the ChoirStaff which already omits the SpanBar. 2. Change the delimiter to the brace, like the GrandStaff (or PianoStaff). 3. Apply an instrument name to the group of related voices to get its label shown between the individual voices. \version "2.25.13" startBrace = \with { systemStartDelimiter = #'SystemStartBrace } notes = { \repeat unfold 5 { b'4 8 8 2 | 4. 8 2 } | 1 \fine } \new ChoirStaff << \new ChoirStaff \with { \startBrace instrumentName = "Soprano" shortInstrumentName = "S." } << \new Staff = sopranoI \with { instrumentName = "I" shortInstrumentName = "I" } \notes \new Staff = sopranoII \with { instrumentName = "II" shortInstrumentName = "II" } \notes >> \new ChoirStaff \with { \startBrace instrumentName = "Alto" shortInstrumentName = "A." } << \new Staff = altoI \with { instrumentName = "I" shortInstrumentName = "I" } \notes \new Staff = altoII \with { instrumentName = "II" shortInstrumentName = "II" } \notes >> >> NOTE: If you do need to use a GrandStaff (or PianoStaff), you can remove the Span_bar_engraver similar to what the ChoirStaff already does: \new PianoStaff \with { \remove Span_bar_engraver } { . . . } -- Aaron Hill