Re: make doc problem

2012-01-27 Thread Phil Holmes
- Original Message - 
From: "Phil Holmes" 

To: ; "Julien Rioux" 
Cc: 
Sent: Friday, January 27, 2012 1:38 PM
Subject: Re: make doc problem


- Original Message - 
From: "Julien Rioux" 

To: 
Cc: 
Sent: Thursday, January 26, 2012 11:00 PM
Subject: Re: make doc problem



On 26/01/2012 11:13 AM, Reinhold Kainhofer wrote:

On 22/01/2012 20:58, Julien Rioux wrote:

Thanks, you're quite right CPU is not the limiting factor for the
build. Disk access and usage of swap when compiling
input/regression/collated-files slows down the build to a crawl for me.


The problem here is that lilypond builds up memory from 400MB to ~1GB
without releasing...
Most of these allocations don't seem to be memory leaks, but rather due
to guile.

Cheers,
Reinhold



Is it a bug? We're talking about lilypond running with 
the -dread-input-files flag here. Once a snippet has been processed and 
lilypond moves on to the next one, there is no reason to hold onto the 
memory used by the previous snippet, right?


--
Julien



I'm trying to look at memory usage on my Ubuntu box.  If I watch the build 
using System Monitor, I rarely see more than a gig used.  However, using 
"free" even my dormant machine is now showing 3 Gigs used.  Is this 
because I have around 2 Gigs marked as "cache"?  Is the actual in-use 
memory used-cache?



Here's a graph of used-cache, which fits well with my observations of system 
monitor.  My machine when lying dormant having finished make/make doc uses 
970 MiB memory.  The peak I saw during make doc was 2.4 Gig.  So make doc 
takes around 1.4 Gigs when doing its greatest processing with 8 parallel 
processors.  Is this too much for your machine, Julien?  If it's a desktop, 
4 Gigs of memory is about £30 now, which might be a simpler solution than 
messing with how make doc runs.


--
Phil Holmes

<>___
bug-lilypond mailing list
bug-lilypond@gnu.org
https://lists.gnu.org/mailman/listinfo/bug-lilypond


Re: make doc problem

2012-01-27 Thread Phil Holmes
- Original Message - 
From: "Julien Rioux" 

To: 
Cc: 
Sent: Thursday, January 26, 2012 11:00 PM
Subject: Re: make doc problem



On 26/01/2012 11:13 AM, Reinhold Kainhofer wrote:

On 22/01/2012 20:58, Julien Rioux wrote:

Thanks, you're quite right CPU is not the limiting factor for the
build. Disk access and usage of swap when compiling
input/regression/collated-files slows down the build to a crawl for me.


The problem here is that lilypond builds up memory from 400MB to ~1GB
without releasing...
Most of these allocations don't seem to be memory leaks, but rather due
to guile.

Cheers,
Reinhold



Is it a bug? We're talking about lilypond running with 
the -dread-input-files flag here. Once a snippet has been processed and 
lilypond moves on to the next one, there is no reason to hold onto the 
memory used by the previous snippet, right?


--
Julien



I'm trying to look at memory usage on my Ubuntu box.  If I watch the build 
using System Monitor, I rarely see more than a gig used.  However, using 
"free" even my dormant machine is now showing 3 Gigs used.  Is this because 
I have around 2 Gigs marked as "cache"?  Is the actual in-use memory 
used-cache?


--
Phil Holmes



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


Re: make doc problem

2012-01-26 Thread Julien Rioux

On 26/01/2012 6:14 PM, Graham Percival wrote:

On Thu, Jan 26, 2012 at 05:57:43PM -0500, Julien Rioux wrote:

On 22/01/2012 2:58 PM, Julien Rioux wrote:

Thanks, you're quite right CPU is not the limiting factor for the build.
Disk access and usage of swap when compiling
input/regression/collated-files slows down the build to a crawl for me.


Could we redistribute the regression test input files into
subfolders of say ~50 files each, possibly sorting them into
categories if it makes sense?


Wanted to do that for ages, but that's not something to get into
now.  But this shouldn't be an issue -- don't we split it into
lists of IIRC 300 files?  We had some kind of emergency bugfix
like that.
... yeah, see make/lysdoc-rules.make

You may want to look into that; perhaps changing the division from
300 to 50 would speed up the build?

- Graham


The `echo' command-line is broken down into 300-file chunks. They all 
still end up into one collated-files.tely


Anyway, it kind of sounds like a workaround or an emergency action as 
you say. Were the memory released at each snippet then it shouldn't be 
an issue.


Cheers,
Julien

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


Re: make doc problem

2012-01-26 Thread Graham Percival
On Thu, Jan 26, 2012 at 05:57:43PM -0500, Julien Rioux wrote:
> On 22/01/2012 2:58 PM, Julien Rioux wrote:
> >Thanks, you're quite right CPU is not the limiting factor for the build.
> >Disk access and usage of swap when compiling
> >input/regression/collated-files slows down the build to a crawl for me.
> 
> Could we redistribute the regression test input files into
> subfolders of say ~50 files each, possibly sorting them into
> categories if it makes sense?

Wanted to do that for ages, but that's not something to get into
now.  But this shouldn't be an issue -- don't we split it into
lists of IIRC 300 files?  We had some kind of emergency bugfix
like that.
... yeah, see make/lysdoc-rules.make

You may want to look into that; perhaps changing the division from
300 to 50 would speed up the build?

- Graham

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


Re: make doc problem

2012-01-26 Thread Julien Rioux

On 26/01/2012 11:13 AM, Reinhold Kainhofer wrote:

On 22/01/2012 20:58, Julien Rioux wrote:

Thanks, you're quite right CPU is not the limiting factor for the
build. Disk access and usage of swap when compiling
input/regression/collated-files slows down the build to a crawl for me.


The problem here is that lilypond builds up memory from 400MB to ~1GB
without releasing...
Most of these allocations don't seem to be memory leaks, but rather due
to guile.

Cheers,
Reinhold



Is it a bug? We're talking about lilypond running with the 
-dread-input-files flag here. Once a snippet has been processed and 
lilypond moves on to the next one, there is no reason to hold onto the 
memory used by the previous snippet, right?


--
Julien

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


Re: make doc problem

2012-01-26 Thread Julien Rioux

On 22/01/2012 2:58 PM, Julien Rioux wrote:

Thanks, you're quite right CPU is not the limiting factor for the build.
Disk access and usage of swap when compiling
input/regression/collated-files slows down the build to a crawl for me.



Could we redistribute the regression test input files into subfolders of 
say ~50 files each, possibly sorting them into categories if it makes sense?


--
Julien

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


Re: make doc problem

2012-01-26 Thread Phil Holmes
- Original Message - 
From: "Reinhold Kainhofer" 

To: "Julien Rioux" 
Cc: ; 
Sent: Thursday, January 26, 2012 4:13 PM
Subject: Re: make doc problem



On 22/01/2012 20:58, Julien Rioux wrote:

Thanks, you're quite right CPU is not the limiting factor for the
build. Disk access and usage of swap when compiling
input/regression/collated-files slows down the build to a crawl for me.


The problem here is that lilypond builds up memory from 400MB to ~1GB
without releasing...
Most of these allocations don't seem to be memory leaks, but rather due
to guile.

Cheers,
Reinhold


It only takes that amount of memory for big builds.  I've never seen much 
over 1 Gig total memory during a make with 8 CPUs all running lilypond.


--
Phil Holmes



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


Re: make doc problem

2012-01-26 Thread Reinhold Kainhofer
On 22/01/2012 20:58, Julien Rioux wrote:
> Thanks, you're quite right CPU is not the limiting factor for the
> build. Disk access and usage of swap when compiling
> input/regression/collated-files slows down the build to a crawl for me.

The problem here is that lilypond builds up memory from 400MB to ~1GB
without releasing...
Most of these allocations don't seem to be memory leaks, but rather due
to guile.

Cheers,
Reinhold

-- 
--
Reinhold Kainhofer, reinh...@kainhofer.com, http://reinhold.kainhofer.com/
 * Financial & Actuarial Math., Vienna Univ. of Technology, Austria
 * http://www.fam.tuwien.ac.at/, DVR: 0005886
 * LilyPond, Music typesetting, http://www.lilypond.org


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


Re: make doc problem

2012-01-22 Thread Phil Holmes
"Julien Rioux"  wrote in message 
news:4f1c6a79.3040...@physics.utoronto.ca...

On 22/01/2012 2:38 PM, David Kastrup wrote:

Julien Rioux  writes:


I can't run -j, I have a single core.


This is factually incorrect.  You can run -j just fine, but you can't
expect much of a speedup.  On a single-core machine,

make -j 2

typically gives you a speedup of maybe 15% (given sufficient memory)
since the CPU can keep busy on processing a second job when the other
job is waiting for the disk to provide new input.

More importantly, you'll get to see the same kind of problems that the
true multi-core people experience when using -j.

So very much recommended for testing.



Thanks, you're quite right CPU is not the limiting factor for the build. 
Disk access and usage of swap when compiling 
input/regression/collated-files slows down the build to a crawl for me.


--
Julien


As a general rule, CPU is very much the limiting factor on make and make 
doc.  With my "single cpu" virtual machine on my Windows box, the CPU is 
stuck at 100%.  With my multi-core Ubuntu box, most of the time all 8 CPUs 
run 100%, with memory never over 1.5 Gigs.  This is using a fairly large 
SSD, but I'm 99% certain that, all other things being equal, CPU is king 
when building lily.


--
Phil Holmes
Bug Squad




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


Re: make doc problem

2012-01-22 Thread David Kastrup
Julien Rioux  writes:

> Thanks, you're quite right CPU is not the limiting factor for the
> build. Disk access and usage of swap when compiling
> input/regression/collated-files slows down the build to a crawl for
> me.

If it is really usage of swap: getting more memory will be by far the
cheapest method of speeding up your computer much more than buying a
faster CPU ever could.

-- 
David Kastrup


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


Re: make doc problem

2012-01-22 Thread Julien Rioux

On 22/01/2012 2:38 PM, David Kastrup wrote:

Julien Rioux  writes:


I can't run -j, I have a single core.


This is factually incorrect.  You can run -j just fine, but you can't
expect much of a speedup.  On a single-core machine,

make -j 2

typically gives you a speedup of maybe 15% (given sufficient memory)
since the CPU can keep busy on processing a second job when the other
job is waiting for the disk to provide new input.

More importantly, you'll get to see the same kind of problems that the
true multi-core people experience when using -j.

So very much recommended for testing.



Thanks, you're quite right CPU is not the limiting factor for the build. 
Disk access and usage of swap when compiling 
input/regression/collated-files slows down the build to a crawl for me.


--
Julien

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


Re: make doc problem

2012-01-22 Thread Jean-Charles Malahieude

Le 22/01/2012 20:22, Julien Rioux disait :

On 22/01/2012 2:15 PM, Julien Rioux wrote:

On 22/01/2012 2:11 PM, Jean-Charles Malahieude wrote:

What I've done to check is:
open Documentation/fr/usage/running.itely

add the five X at the beginning of the first text line

XCe chapitre passe en revue ce qui se passe lorsque vous lancez
LilyPond.

save it and "make -j3 doc LANGS='fr'"

File out-www/offline-root/Documentation/usage/running-lilypond.fr.html
still shows
"Ce chapitre passe en revue ce qui se passe lorsque vous lancez
LilyPond."

--
Jean-Charles


You're right, I forgot that I caused that. Give me a moment I will push
the fix to staging...

Regards,
Julien


Done: 930dbeff8f5d31faa9654365c8ed84a30e489e83

Hope this fixes it for you as well.



Yes, many thanks!

--
Jean-Charles


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


Re: make doc problem

2012-01-22 Thread David Kastrup
Julien Rioux  writes:

> I can't run -j, I have a single core.

This is factually incorrect.  You can run -j just fine, but you can't
expect much of a speedup.  On a single-core machine,

make -j 2

typically gives you a speedup of maybe 15% (given sufficient memory)
since the CPU can keep busy on processing a second job when the other
job is waiting for the disk to provide new input.

More importantly, you'll get to see the same kind of problems that the
true multi-core people experience when using -j.

So very much recommended for testing.

-- 
David Kastrup


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


Re: make doc problem

2012-01-22 Thread Julien Rioux

On 22/01/2012 2:15 PM, Julien Rioux wrote:

On 22/01/2012 2:11 PM, Jean-Charles Malahieude wrote:

What I've done to check is:
open Documentation/fr/usage/running.itely

add the five X at the beginning of the first text line

XCe chapitre passe en revue ce qui se passe lorsque vous lancez
LilyPond.

save it and "make -j3 doc LANGS='fr'"

File out-www/offline-root/Documentation/usage/running-lilypond.fr.html
still shows
"Ce chapitre passe en revue ce qui se passe lorsque vous lancez
LilyPond."

--
Jean-Charles


You're right, I forgot that I caused that. Give me a moment I will push
the fix to staging...

Regards,
Julien


Done: 930dbeff8f5d31faa9654365c8ed84a30e489e83

Hope this fixes it for you as well.

Thanks,
Julien

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


Re: make doc problem

2012-01-22 Thread Julien Rioux

On 22/01/2012 2:11 PM, Jean-Charles Malahieude wrote:

What I've done to check is:
open Documentation/fr/usage/running.itely

add the five X at the beginning of the first text line

XCe chapitre passe en revue ce qui se passe lorsque vous lancez
LilyPond.

save it and "make -j3 doc LANGS='fr'"

File out-www/offline-root/Documentation/usage/running-lilypond.fr.html
still shows
"Ce chapitre passe en revue ce qui se passe lorsque vous lancez LilyPond."

--
Jean-Charles


You're right, I forgot that I caused that. Give me a moment I will push 
the fix to staging...


Regards,
Julien

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


Re: make doc problem

2012-01-22 Thread Jean-Charles Malahieude

Le 22/01/2012 19:32, Julien Rioux disait :

On 22/01/2012 1:19 PM, Jean-Charles Malahieude wrote:

Hi all!

Not only that I can no longer use "-j" on a first build (it is OK
on the next builds), [...]



I can't run -j, I have a single core. Can you please report more
precisely why you can no longer use it?



I make a clean and let you now...

--
Jean-Charles

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


Re: make doc problem

2012-01-22 Thread Julien Rioux

On 22/01/2012 1:32 PM, Julien Rioux wrote:

The second issue I have not seen. If I correct a typo in a file in
Documentation then make doc will rebuild it. OK I should check
Documentation/fr right now...



When I edit Documentation/fr/essay/literature.itely and issue a make doc 
from within build/Documentation/fr then Documentation/fr/essay.tely is 
recompiled. I can see the result in Documentation/fr/out-www/essay/* and 
in Documentation/out-www/essay.fr.* [1]


Please report in more details the problems that you encounter, e.g. 
which file are you modifying and how are you calling make.


Thanks,
Regards,
Julien

[1] Big side note: It doesn't work flawlessly: notation.tely and a bunch 
of other manuals are also recompiled when they shouldn't, since I didn't 
touch any of their source files. This problem I trace back to the 
CHAIN_RULE in make/ly-rules.make, which I didn't dare touch up to now. 
This rule states that web depends on usage depends on notation depends 
on... etc. so that only one instance of lilypond-book is running at once 
on any given manual. As a side-effect it means that manuals depend on 
each other when that isn't in fact the case.


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


Re: make doc problem

2012-01-22 Thread Phil Holmes
- Original Message - 
From: "Julien Rioux" 

To: "Phil Holmes" 
Cc: "Jean-Charles Malahieude" ; "LilyPond Bugs" 
; "LilyPond Devel" 

Sent: Sunday, January 22, 2012 6:35 PM
Subject: Re: make doc problem



On 22/01/2012 1:30 PM, Phil Holmes wrote:

I've run a few with -j9 CPU_COUNT=9 this afternoon with no problems. The
only oddity I've noticed is that make doc make doc now seems to rebuild
a lot of files the second run.

--
Phil Holmes




I've hit a roadblock with issue 2125 which attempted to fix that make doc; 
make doc problem. With that patch, on my machine the second make doc 
reports `nothing to be done'. So it works on my machine but not yours and 
I haven't quite figured it out yet.


Regards,
Julien



Please shout if you want logfiles or testing.  I can run tests fairly 
quickly if I've got my lily machine up and running.


--
Phil Holmes



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


Re: make doc problem

2012-01-22 Thread Julien Rioux

On 22/01/2012 1:30 PM, Phil Holmes wrote:

I've run a few with -j9 CPU_COUNT=9 this afternoon with no problems. The
only oddity I've noticed is that make doc make doc now seems to rebuild
a lot of files the second run.

--
Phil Holmes




I've hit a roadblock with issue 2125 which attempted to fix that make 
doc; make doc problem. With that patch, on my machine the second make 
doc reports `nothing to be done'. So it works on my machine but not 
yours and I haven't quite figured it out yet.


Regards,
Julien

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


Re: make doc problem

2012-01-22 Thread Julien Rioux

On 22/01/2012 1:19 PM, Jean-Charles Malahieude wrote:

Hi all!

Not only that I can no longer use "-j" on a first build (it is OK
on the next builds), which means 40' for a "make doc LANGS='fr' and
about 2 hours for all languages, I now have to "make doc-clean" in
order to view a corrected typo. I've tried a "touch masterfile.tely"
before "make doc" but it doesn't change anything.

Does anybody else experiment this as well?

Cheers,
Jean-Charles


Hi Jean-Charles,

I can't run -j, I have a single core. Can you please report more 
precisely why you can no longer use it?


The second issue I have not seen. If I correct a typo in a file in 
Documentation then make doc will rebuild it. OK I should check 
Documentation/fr right now...


Regards,
Julien

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


Re: make doc problem

2012-01-22 Thread Phil Holmes
- Original Message - 
From: "Jean-Charles Malahieude" 
To: "Lily Bugs" ; "lilypond-devel" 
; "Julien Rioux" 

Sent: Sunday, January 22, 2012 6:19 PM
Subject: make doc problem



Hi all!

Not only that I can no longer use "-j" on a first build (it is OK
on the next builds), which means 40' for a "make doc LANGS='fr' and
about 2 hours for all languages, I now have to "make doc-clean" in
order to view a corrected typo. I've tried a "touch masterfile.tely"
before "make doc" but it doesn't change anything.

Does anybody else experiment this as well?

Cheers,
Jean-Charles



I've run a few with -j9 CPU_COUNT=9 this afternoon with no problems.  The 
only oddity I've noticed is that make doc make doc now seems to rebuild a 
lot of files the second run.


--
Phil Holmes



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


make doc problem

2012-01-22 Thread Jean-Charles Malahieude

Hi all!

Not only that I can no longer use "-j" on a first build (it is OK
on the next builds), which means 40' for a "make doc LANGS='fr' and
about 2 hours for all languages, I now have to "make doc-clean" in
order to view a corrected typo. I've tried a "touch masterfile.tely"
before "make doc" but it doesn't change anything.

Does anybody else experiment this as well?

Cheers,
Jean-Charles

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