pcp
[Top] [All Lists]

Re: [pcp] pcp update: more make -j support

To: "Frank Ch. Eigler" <fche@xxxxxxxxxx>, pcp developers <pcp@xxxxxxxxxxx>
Subject: Re: [pcp] pcp update: more make -j support
From: Mark Goodwin <mgoodwin@xxxxxxxxxx>
Date: Fri, 15 May 2015 15:53:21 +1000
Delivered-to: pcp@xxxxxxxxxxx
In-reply-to: <20150515010809.GC19346@xxxxxxxxxx>
References: <20150515010809.GC19346@xxxxxxxxxx>
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:31.0) Gecko/20100101 Thunderbird/31.3.0
On 05/15/2015 11:08 AM, Frank Ch. Eigler wrote:
Hi -

The following patches, on git://sourceware.org/git/pcpfans.git
fche/make-j improve pcp build times for multiprocessor machines.  This
is follow-on work from much older commits de9f1e5cd and 91917ccf3, and
benefits even ordinary Makepkgs and top level make.  Some directories
and operations remain non-parallelized, but the core build is
considerably faster - apprx. half time on a 4vcpu box.

Hi Frank, on my 4-core RHEL7.1 box, your fche/make-j tree builds :

real    8m16.531s
user    8m15.093s
sys     2m4.889s

Compared to current master branch :

real    10m9.608s
user    8m6.818s
sys     2m1.715s

So the changes look good - reviewing the code the need for the '+' prefix
on certain rules wasn't obvious (I know about '@' to suppress echo but not
'+'). Anyway, it's a decent speedup!

On my 2-core F21 box, there was barely any difference.

I'll merge it in with the next batch, cheers.



commit 0c51ecba55ba8aef3232d668910a697da9e3d9ca
Author: Frank Ch. Eigler <fche@xxxxxxxxxx>
Date:   Thu May 14 14:02:57 2015 -0400

     build GNUmakefiles: allow more parallel (make -j) jobs

     For GNU make's -jNNN to propagate from an outer parent make to child
     processes, macros that invoke $(MAKE) internally need to be decorated
     with a "+" prefix.  On a 4 vcpu machine, this allows the complete pcp
     tree to be built in less than half the time.

     There are still some ".NOTPARALLEL:" markers in a few GNUmakefiles
     that lack full dependency declarations, and subdirectory make jobs
     tend to be invoked serially (due to the use of explicit shell-script
     loops), so we have some further potential speedups too.

commit 82595e3f0fd36e6e50045a3c5f85f2be9afe49cf
Author: Frank Ch. Eigler <fche@xxxxxxxxxx>
Date:   Thu May 14 10:46:21 2015 -0400

     rpm build scripts: use make %{?_smp_mflags} for faster building

     On SMP build hosts, we should benefit from the available parallelism.


_______________________________________________
pcp mailing list
pcp@xxxxxxxxxxx
http://oss.sgi.com/mailman/listinfo/pcp


<Prev in Thread] Current Thread [Next in Thread>