Re: Paralellizing Lilypond [was: Re: Sibelius Software UK office shutsdown]

2012-08-14 Thread Michael Rivers
I know this topic changed from Sibelius going belly up to parallelization,
but I don't know where else to put it...

I'm a current Sibelius user who found Lilypond after panicking a little and
a doing quick web search for open source notation software. I don't know how
many other users may check out LP, but I love it so far. I just asked my
wife to choose among the same piece I printed using Sibelius, the Finale
demo, and LP, and she immediately pointed to the LP score and said That
one's perfect.






--
View this message in context: 
http://lilypond.1069038.n5.nabble.com/Sibelius-Software-UK-office-shuts-down-tp17227p130605.html
Sent from the User mailing list archive at Nabble.com.

___
lilypond-user mailing list
lilypond-user@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-user


Re: Paralellizing Lilypond [was: Re: Sibelius Software UK office shutsdown]

2012-08-14 Thread Lucas Gonze
I made the same switch and am happy about it. I'm not as fast with
Lilypond yet, but am getting there.

I especially like that that my scores won't become uneditable whenever
I stop buying upgrades from Sibelius.

On Tue, Aug 14, 2012 at 12:05 AM, Michael Rivers
 I'm a current Sibelius user who found Lilypond after panicking a little and
 a doing quick web search for open source notation software. I don't know how
 many other users may check out LP, but I love it so far. I just asked my
 wife to choose among the same piece I printed using Sibelius, the Finale
 demo, and LP, and she immediately pointed to the LP score and said That
 one's perfect.






 --
 View this message in context: 
 http://lilypond.1069038.n5.nabble.com/Sibelius-Software-UK-office-shuts-down-tp17227p130605.html
 Sent from the User mailing list archive at Nabble.com.

 ___
 lilypond-user mailing list
 lilypond-user@gnu.org
 https://lists.gnu.org/mailman/listinfo/lilypond-user

___
lilypond-user mailing list
lilypond-user@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-user


Re: Paralellizing Lilypond [was: Re: Sibelius Software UK office shutsdown]

2012-08-14 Thread David Kastrup
Lucas Gonze lucas.go...@gmail.com writes:

 I made the same switch and am happy about it. I'm not as fast with
 Lilypond yet, but am getting there.

 I especially like that that my scores won't become uneditable whenever
 I stop buying upgrades from Sibelius.

How would that happen?  I would imagine that if you keep your scores and
software version unchanged, they should remain working on a given
system.  Unless somebody else edits them with a newer version and sends
you the results.  You'll have the same backward compatibility problem
with LilyPond (or pretty much any software) in that case, but the
human-readable format makes it more likely to wedge in a
backward-compatible replacement at the problematic places.  And of
course, there is no need to _buy_ upgrades.

-- 
David Kastrup

___
lilypond-user mailing list
lilypond-user@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-user


Re: Paralellizing Lilypond [was: Re: Sibelius Software UK office shutsdown]

2012-08-14 Thread Lucas Gonze
 Lucas Gonze lucas.go...@gmail.com writes:

 I made the same switch and am happy about it. I'm not as fast with
 Lilypond yet, but am getting there.

 I especially like that that my scores won't become uneditable whenever
 I stop buying upgrades from Sibelius.


On Tue, Aug 14, 2012 at 12:00 PM, David Kastrup d...@gnu.org wrote:
 How would that happen?  I would imagine that if you keep your scores and
 software version unchanged, they should remain working on a given
 system.  ...  And of
 course, there is no need to _buy_ upgrades.

You'd think so, but the underlying OS changes and Sibelius doesn't rev
old versions to keep up. The last version of Sibelius that I paid for
now crashes on boot.

As a result I can't launch Sibelius for tweaks like key changes. The
only solution is to re-enter a score in Lilypond.

___
lilypond-user mailing list
lilypond-user@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-user


Re: Paralellizing Lilypond [was: Re: Sibelius Software UK office shutsdown]

2012-08-14 Thread Francisco Vila
El 14/08/2012 21:21, Lucas Gonze lucas.go...@gmail.com escribió:

  Lucas Gonze lucas.go...@gmail.com writes:
 
  I made the same switch and am happy about it. I'm not as fast with
  Lilypond yet, but am getting there.
 
  I especially like that that my scores won't become uneditable whenever
  I stop buying upgrades from Sibelius.


 On Tue, Aug 14, 2012 at 12:00 PM, David Kastrup d...@gnu.org wrote:
  How would that happen?  I would imagine that if you keep your scores and
  software version unchanged, they should remain working on a given
  system.  ...  And of
  course, there is no need to _buy_ upgrades.

 You'd think so, but the underlying OS changes and Sibelius doesn't rev
 old versions to keep up. The last version of Sibelius that I paid for
 now crashes on boot.

 As a result I can't launch Sibelius for tweaks like key changes. The
 only solution is to re-enter a score in Lilypond.


He meant there is no need to buy lilypond upgrades, I think.

___
 lilypond-user mailing list
 lilypond-user@gnu.org
 https://lists.gnu.org/mailman/listinfo/lilypond-user
___
lilypond-user mailing list
lilypond-user@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-user


Re: Paralellizing Lilypond [was: Re: Sibelius Software UK office shutsdown]

2012-08-14 Thread David Kastrup
Lucas Gonze lucas.go...@gmail.com writes:

 Lucas Gonze lucas.go...@gmail.com writes:

 I made the same switch and am happy about it. I'm not as fast with
 Lilypond yet, but am getting there.

 I especially like that that my scores won't become uneditable whenever
 I stop buying upgrades from Sibelius.


 On Tue, Aug 14, 2012 at 12:00 PM, David Kastrup d...@gnu.org wrote:
 How would that happen?  I would imagine that if you keep your scores and
 software version unchanged, they should remain working on a given
 system.  ...  And of
 course, there is no need to _buy_ upgrades.

The last sentence was in reference to using LilyPond.

 You'd think so, but the underlying OS changes and Sibelius doesn't rev
 old versions to keep up. The last version of Sibelius that I paid for
 now crashes on boot.

Oh wow.  Considering how long binaries tend to work on GNU/Linux (where
there actually is much less proprietary/binary software for which this
is ultimately important), with several versions of dynamic libraries
being installable at the same time, this is somewhat off-putting.

 As a result I can't launch Sibelius for tweaks like key changes. The
 only solution is to re-enter a score in Lilypond.

It is not really new, but I keep being surprised at the things
proprietary/commercial software vendors are getting away with doing to
their paying customers.

There are occasions where users hit the mailing lists here getting off
on the wrong foot, voicing unrealistic expectations and demands.  One
tends to have the reaction you can put forward that sort of expectation
when you are actually paying for software, but the reality seems to be
that as a paying customer you are treated worse.

-- 
David Kastrup


___
lilypond-user mailing list
lilypond-user@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-user


Re: Paralellizing Lilypond [was: Re: Sibelius Software UK office shutsdown]

2012-08-14 Thread Lucas Gonze
On Tue, Aug 14, 2012 at 12:40 PM, David Kastrup d...@gnu.org wrote:
 It is not really new, but I keep being surprised at the things
 proprietary/commercial software vendors are getting away with doing to
 their paying customers.

Vendors have your existing scores as hostages to keep you paying. It's
the opposite of a value proposition.

Free software also has that hostage effect, but to a lesser extent.

___
lilypond-user mailing list
lilypond-user@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-user


Re: Paralellizing Lilypond [was: Re: Sibelius Software UK office shutsdown]

2012-08-11 Thread Joseph Rushton Wakeling

On 10/08/12 15:08, Phil Holmes wrote:

- Original Message - From: Joseph Rushton Wakeling
joseph.wakel...@webdrake.net

What counts as a chunk for the -djob-count option?  It's not clear from the
2.15 usage manual.


I believe it would be a compilable file.


Useful to know, thank you!

... but I think it emphasizes my real point: this puts the onus on the user to 
split up a project into independently-compilable units.  I think that it's worth 
having Lilypond try and automatically identify independent units, which could 
have knock-on benefits in terms of minimizing rebuild times for scores.



___
lilypond-user mailing list
lilypond-user@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-user


Re: Paralellizing Lilypond [was: Re: Sibelius Software UK office shutsdown]

2012-08-11 Thread Gilles Sadowski
On Sat, Aug 11, 2012 at 01:21:27PM +0100, Joseph Rushton Wakeling wrote:
 On 10/08/12 15:08, Phil Holmes wrote:
 - Original Message - From: Joseph Rushton Wakeling
 joseph.wakel...@webdrake.net
 What counts as a chunk for the -djob-count option?  It's not clear from 
 the
 2.15 usage manual.
 
 I believe it would be a compilable file.
 
 Useful to know, thank you!
 
 ... but I think it emphasizes my real point: this puts the onus on
 the user to split up a project into independently-compilable units.

Such units are also bound to be more maintainable in the long term.
Putting the burden on lilypond (the software) would rather encourage
sloppy LilyPond projects (the score source).

 I think that it's worth having Lilypond try and automatically
 identify independent units, which could have knock-on benefits in
 terms of minimizing rebuild times for scores.

How many scores would be impossible to manually design into reasonably
large independent units?
Is it really worth the developers' time to try and automate this? 


Best regards,
Gilles

___
lilypond-user mailing list
lilypond-user@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-user


Re: Paralellizing Lilypond [was: Re: Sibelius Software UK office shutsdown]

2012-08-11 Thread David Kastrup
Gilles Sadowski gil...@harfang.homelinux.org writes:

 On Sat, Aug 11, 2012 at 01:21:27PM +0100, Joseph Rushton Wakeling wrote:
 On 10/08/12 15:08, Phil Holmes wrote:
 - Original Message - From: Joseph Rushton Wakeling
 joseph.wakel...@webdrake.net
 What counts as a chunk for the -djob-count option?  It's not
  clear from the
 2.15 usage manual.
 
 I believe it would be a compilable file.
 
 Useful to know, thank you!
 
 ... but I think it emphasizes my real point: this puts the onus on
 the user to split up a project into independently-compilable units.

 Such units are also bound to be more maintainable in the long term.
 Putting the burden on lilypond (the software) would rather encourage
 sloppy LilyPond projects (the score source).

I don't think that LilyPond can reasonably split a project along the
lines of independent chunks since chunks basically are not independent
and can communicate using variables and functions.

It is more realistic to work with some parallelism and pipelining in the
different processing stages.

-- 
David Kastrup


___
lilypond-user mailing list
lilypond-user@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-user


Re: Paralellizing Lilypond [was: Re: Sibelius Software UK office shutsdown]

2012-08-11 Thread Graham Percival
On Sat, Aug 11, 2012 at 01:21:27PM +0100, Joseph Rushton Wakeling wrote:
 ... but I think it emphasizes my real point: this puts the onus on
 the user to split up a project into independently-compilable units.
 I think that it's worth having Lilypond try and automatically
 identify independent units, which could have knock-on benefits in
 terms of minimizing rebuild times for scores.

Even though this phrase has gone out of favor, it was really
common 5-10 years ago on the lilypond mailing lists, and I think
it's appropriate: Patches appreciated.

- Graham

___
lilypond-user mailing list
lilypond-user@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-user


Re: Paralellizing Lilypond [was: Re: Sibelius Software UK office shutsdown]

2012-08-11 Thread m...@mikesolomon.org
On 11 août 2012, at 15:16, Graham Percival gra...@percival-music.ca wrote:

 On Sat, Aug 11, 2012 at 01:21:27PM +0100, Joseph Rushton Wakeling wrote:
 ... but I think it emphasizes my real point: this puts the onus on
 the user to split up a project into independently-compilable units.
 I think that it's worth having Lilypond try and automatically
 identify independent units, which could have knock-on benefits in
 terms of minimizing rebuild times for scores.
 
 Even though this phrase has gone out of favor, it was really
 common 5-10 years ago on the lilypond mailing lists, and I think
 it's appropriate: Patches appreciated.
 
 - Graham
 
 ___
 lilypond-user mailing list
 lilypond-user@gnu.org
 https://lists.gnu.org/mailman/listinfo/lilypond-user

On this subject, I'll say that one of my hats on the development team is that 
of FrogMeister, or the person who helps people with first projects in LilyPond 
coding.  I have been tied up w/ professional obligations for a while now and 
don't read the lists as attentively as I used to but I'm always glad to lend a 
helping hand for someone who wants to start off.  So if you're interested in 
doing some coding work on LilyPond, lemme know!  All levels of expertise 
(including none at all) are welcome.

Cheers,
MS
___
lilypond-user mailing list
lilypond-user@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-user


Re: Paralellizing Lilypond [was: Re: Sibelius Software UK office shutsdown]

2012-08-11 Thread David Kastrup
m...@mikesolomon.org m...@mikesolomon.org writes:

 On 11 août 2012, at 15:16, Graham Percival gra...@percival-music.ca wrote:

 On Sat, Aug 11, 2012 at 01:21:27PM +0100, Joseph Rushton Wakeling wrote:
 ... but I think it emphasizes my real point: this puts the onus on
 the user to split up a project into independently-compilable units.
 I think that it's worth having Lilypond try and automatically
 identify independent units, which could have knock-on benefits in
 terms of minimizing rebuild times for scores.
 
 Even though this phrase has gone out of favor, it was really
 common 5-10 years ago on the lilypond mailing lists, and I think
 it's appropriate: Patches appreciated.

 On this subject, I'll say that one of my hats on the development team
 is that of FrogMeister, or the person who helps people with first
 projects in LilyPond coding.  I have been tied up w/ professional
 obligations for a while now and don't read the lists as attentively as
 I used to but I'm always glad to lend a helping hand for someone who
 wants to start off.  So if you're interested in doing some coding work
 on LilyPond, lemme know!  All levels of expertise (including none at
 all) are welcome.

It would likely not be the best utilization of enthusiasm to let people
set out on impossible tasks.  LilyPond is too programmatic to be
amenable to computer discovery of independent components in one LilyPond
document.

To make progress in this kind of problem space, one would need to work
with LilyPond itself: either cutting out ways to reasonably split one
work into modules, or by defining subsets of the input language that
even _could_ be guaranteed to be workable independently.

-- 
David Kastrup


___
lilypond-user mailing list
lilypond-user@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-user


Re: Paralellizing Lilypond [was: Re: Sibelius Software UK office shutsdown]

2012-08-11 Thread Han-Wen Nienhuys
On Sat, Aug 11, 2012 at 9:21 AM, Joseph Rushton Wakeling
joseph.wakel...@webdrake.net wrote:
 What counts as a chunk for the -djob-count option?  It's not clear from
 the
 2.15 usage manual.


 I believe it would be a compilable file.


 Useful to know, thank you!

 ... but I think it emphasizes my real point: this puts the onus on the user
 to split up a project into independently-compilable units.  I think that
 it's worth having Lilypond try and automatically identify independent units,
 which could have knock-on benefits in terms of minimizing rebuild times for
 scores.

It would be nice if this were automatically splittable, but the
reality is that GUILE has no meaningful multithreading support at the
interpreter level, so almost mutating operation has the potential to
be a race condition.

Short of rewriting LilyPond from scratch, I don't see how we can get
parallelism within a file; that doesn't stop you from inventing
something that uses includes and some preprocessing to render
subsections of a melody, and then stitch the result together in a
postprocessing phase.

--
Han-Wen Nienhuys - han...@xs4all.nl - http://www.xs4all.nl/~hanwen

___
lilypond-user mailing list
lilypond-user@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-user


Re: Paralellizing Lilypond [was: Re: Sibelius Software UK office shutsdown]

2012-08-11 Thread David Kastrup
Han-Wen Nienhuys hanw...@gmail.com writes:

 On Sat, Aug 11, 2012 at 9:21 AM, Joseph Rushton Wakeling
 joseph.wakel...@webdrake.net wrote:
 What counts as a chunk for the -djob-count option?  It's not clear from
 the
 2.15 usage manual.


 I believe it would be a compilable file.


 Useful to know, thank you!

 ... but I think it emphasizes my real point: this puts the onus on the user
 to split up a project into independently-compilable units.  I think that
 it's worth having Lilypond try and automatically identify independent units,
 which could have knock-on benefits in terms of minimizing rebuild times for
 scores.

 It would be nice if this were automatically splittable, but the
 reality is that GUILE has no meaningful multithreading support at the
 interpreter level, so almost mutating operation has the potential to
 be a race condition.

Guile 2.0 has threading support.  Whether that will prove usefully
applicable to LilyPond will be a different question.

-- 
David Kastrup


___
lilypond-user mailing list
lilypond-user@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-user


Re: Paralellizing Lilypond [was: Re: Sibelius Software UK office shutsdown]

2012-08-11 Thread Han-Wen Nienhuys
On Sat, Aug 11, 2012 at 4:18 PM, David Kastrup d...@gnu.org wrote:

 I believe it would be a compilable file.


 Useful to know, thank you!

 ... but I think it emphasizes my real point: this puts the onus on the user
 to split up a project into independently-compilable units.  I think that
 it's worth having Lilypond try and automatically identify independent units,
 which could have knock-on benefits in terms of minimizing rebuild times for
 scores.

 It would be nice if this were automatically splittable, but the
 reality is that GUILE has no meaningful multithreading support at the
 interpreter level, so almost mutating operation has the potential to
 be a race condition.

 Guile 2.0 has threading support.  Whether that will prove usefully
 applicable to LilyPond will be a different question.

It has had threading for a long time, but the interpreter is full of
global variables.  This makes it difficult to ensure that operations
are properly serialized.  Also, I would be surprised if the MT has had
a lot of real testing.

--
Han-Wen Nienhuys - han...@xs4all.nl - http://www.xs4all.nl/~hanwen

___
lilypond-user mailing list
lilypond-user@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-user


Re: Paralellizing Lilypond [was: Re: Sibelius Software UK office shutsdown]

2012-08-10 Thread Phil Holmes
- Original Message - 
From: Joseph Rushton Wakeling joseph.wakel...@webdrake.net

To: han...@xs4all.nl
Cc: lilypond-user@gnu.org; Han-Wen Nienhuys hanw...@gmail.com
Sent: Friday, August 10, 2012 11:46 AM
Subject: Paralellizing Lilypond [was: Re: Sibelius Software UK office 
shutsdown]


Yes, but the problem that you have there is that it requires the user to 
separate out the projects manually using some kind of build system like 
Make.  I don't see why in principle Lilypond shouldn't be able to work out 
those independent jobs itself -- essentially any elements separated by a 
page break can be handled as a separate job, and there must be other 
further optimizations available.




If you could break it up into 8 chunks, you could use all 8 cores in a quad 
core system using -djob-count.  No need to use make.


--
Phil Holmes 



___
lilypond-user mailing list
lilypond-user@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-user


Re: Paralellizing Lilypond [was: Re: Sibelius Software UK office shutsdown]

2012-08-10 Thread Joseph Rushton Wakeling

On 10/08/12 14:31, Phil Holmes wrote:

If you could break it up into 8 chunks, you could use all 8 cores in a quad core
system using -djob-count.  No need to use make.


What counts as a chunk for the -djob-count option?  It's not clear from the 
2.15 usage manual.


___
lilypond-user mailing list
lilypond-user@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-user