Hello Phil,

As an IT specialist who used to do large scale performance tuning of big
UNIX systems, let me add two A$ cents worth.

Modern operating systems cache a lot of objects in memory. When a program
is first run it can take much longer than the next time since disk blocks
have to be loaded into memory which is relatively slow. The next run can
often take advantage of data in memory not disk which is orders of
magnitude faster. There is all sorts of other caching that we need not
mention.

What's the point? The point is, for proper timing figures for a client,
tedious though it may be, you need to have an equal field for each run.
This means you absolutely need to reboot the system for each timing run.
Then, from a practical usage point of view with lilypond,. where you
recompile repeatedly, an average figure is acceptable. But to do
comparisons you need a strict methodology.

I cannot of course resist adding that the UNIX filesystem and
read-ahead/write-behind and disk block layout is _so_ much more
sophisticated than Windows that the sheer performance gains are
overwhelming. Even running Linux in a virtual machine on Windows is
considerably faster than Windows. In fact, I have run timing tests in the
past that show that running Windows in Linux on Windows is faster than
native Windows - this is due to the overall efficiency of the Linux I/O
code. It's no wonder UNIX dominates the enterprise server market worldwide.
Even SSD's don't make Windows into a high performance environment (in fact
you need such because Windows is intrinsically so sluggish).

All the best form Down Under!
Andrew


On 16 April 2015 at 23:00, Phil Holmes <philehol...@googlemail.com> wrote:

>  The performance of LilyPond 2.19.18 on Windows is _much_ better than
> previous versions.  Some examples:
>
> A 26 page multi-score piece I've been working on:
> 2.19.16: 114s to compile
> 2.19.18: 52s
>
> A 500 bar piece of old music I was working on:
>
> 2.19.18: 61.6s
> 2.19.16: 124.6s
> 2.19.6:  150.9s
> 2.18.2:  173.8s
> 2.16.0:  111.8s
>
> A simple stress test:
>
> \repeat unfold 900 {
>   c''4 c' c c,
> }
>
> 2.19.18: 35.6s
> 2.19.16: 51.3s
> 2.19.6:  46.0s
> 2.18.2:  45.0s
> 2.16.0:  51.4s
>
> Interesting...
>
> _______________________________________________
> 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

Reply via email to