Han-Wen Nienhuys wrote:
While LilyPond may be single threaded, in general the underlying operating
system is multithreaded.  It might be the case that a system call LilyPond
depends on can get executed in a multithreaded way.

LilyPond almost does not interact with the OS except for reading and
writing a couple of files. It's CPU bound.

That may be true, but it also places a load on the system in ways that aren't obvious. For example the virtual memory system, paging in executable code, mapping shared libraries.

It was mentioned that LilyPond uses a lot of stack. The stack is extended automatically on most VM systems - when you try to access a region of stack memory that's not mapped, there is a page fault, and the page fault handler creates the necessary mapping.

It would be interesting to see what the performance is on different operating systems, but running on the exact same hardware.

--
Michael David Crawford
mich...@geometricvisions.com
http://www.geometricvisions.com/ <-- Creative Commons LilyPond Scores


_______________________________________________
lilypond-user mailing list
lilypond-user@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-user

Reply via email to