All of lore.kernel.org
 help / color / mirror / Atom feed
* distcc/ccache?
@ 2010-12-08  6:51 Jon Masters
  2010-12-08 11:12 ` distcc/ccache? Richard Purdie
  0 siblings, 1 reply; 6+ messages in thread
From: Jon Masters @ 2010-12-08  6:51 UTC (permalink / raw)
  To: poky

Hello,

Anyone happen to know if poky plays nicely with distcc?

Jon.




^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: distcc/ccache?
  2010-12-08  6:51 distcc/ccache? Jon Masters
@ 2010-12-08 11:12 ` Richard Purdie
  2010-12-08 13:42   ` distcc/ccache? Tom Rini
                     ` (2 more replies)
  0 siblings, 3 replies; 6+ messages in thread
From: Richard Purdie @ 2010-12-08 11:12 UTC (permalink / raw)
  To: Jon Masters; +Cc: poky

On Wed, 2010-12-08 at 01:51 -0500, Jon Masters wrote:
> Anyone happen to know if poky plays nicely with distcc?

I think most success has been with icecc in the past and there is a
icecc class which has code to enable that. It turns out that compiling
isn't the main bottleneck in builds though and icecc isn't something we
test in Poky at this time, we just provide the same class OE has which
may or may not work.

Cheers,

Richard



^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: distcc/ccache?
  2010-12-08 11:12 ` distcc/ccache? Richard Purdie
@ 2010-12-08 13:42   ` Tom Rini
  2010-12-08 15:21   ` distcc/ccache? Jon Masters
  2010-12-08 17:39   ` distcc/ccache? Darren Hart
  2 siblings, 0 replies; 6+ messages in thread
From: Tom Rini @ 2010-12-08 13:42 UTC (permalink / raw)
  To: poky

On 12/08/2010 04:12 AM, Richard Purdie wrote:
> On Wed, 2010-12-08 at 01:51 -0500, Jon Masters wrote:
>> Anyone happen to know if poky plays nicely with distcc?
>
> I think most success has been with icecc in the past and there is a
> icecc class which has code to enable that. It turns out that compiling
> isn't the main bottleneck in builds though and icecc isn't something we
> test in Poky at this time, we just provide the same class OE has which
> may or may not work.

The openembedded class has been working recently but indeed, that's not 
the bottleneck you're likely to run into anymore.

-- 
Tom Rini
Mentor Graphics Corporation


^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: distcc/ccache?
  2010-12-08 11:12 ` distcc/ccache? Richard Purdie
  2010-12-08 13:42   ` distcc/ccache? Tom Rini
@ 2010-12-08 15:21   ` Jon Masters
  2010-12-08 15:53     ` distcc/ccache? Koen Kooi
  2010-12-08 17:39   ` distcc/ccache? Darren Hart
  2 siblings, 1 reply; 6+ messages in thread
From: Jon Masters @ 2010-12-08 15:21 UTC (permalink / raw)
  To: Richard Purdie; +Cc: poky

On Wed, 2010-12-08 at 11:12 +0000, Richard Purdie wrote:
> On Wed, 2010-12-08 at 01:51 -0500, Jon Masters wrote:
> > Anyone happen to know if poky plays nicely with distcc?
> 
> I think most success has been with icecc in the past and there is a
> icecc class which has code to enable that. It turns out that compiling
> isn't the main bottleneck in builds though and icecc isn't something we
> test in Poky at this time, we just provide the same class OE has which
> may or may not work.

Thanks. Someone else pointed me to Icecream, too. I traditionally do the
toolchain copy manually to each build host at home, but apparently if I
read up on and use Ice it will do all of that toolchain management too.

Thanks,

Jon.




^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: distcc/ccache?
  2010-12-08 15:21   ` distcc/ccache? Jon Masters
@ 2010-12-08 15:53     ` Koen Kooi
  0 siblings, 0 replies; 6+ messages in thread
From: Koen Kooi @ 2010-12-08 15:53 UTC (permalink / raw)
  To: poky


Op 8 dec 2010, om 16:21 heeft Jon Masters het volgende geschreven:

> On Wed, 2010-12-08 at 11:12 +0000, Richard Purdie wrote:
>> On Wed, 2010-12-08 at 01:51 -0500, Jon Masters wrote:
>>> Anyone happen to know if poky plays nicely with distcc?
>> 
>> I think most success has been with icecc in the past and there is a
>> icecc class which has code to enable that. It turns out that compiling
>> isn't the main bottleneck in builds though and icecc isn't something we
>> test in Poky at this time, we just provide the same class OE has which
>> may or may not work.
> 
> Thanks. Someone else pointed me to Icecream, too

I'm having a massive reply-to fail here since this list does NOT munge reply-to for a change :)

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: distcc/ccache?
  2010-12-08 11:12 ` distcc/ccache? Richard Purdie
  2010-12-08 13:42   ` distcc/ccache? Tom Rini
  2010-12-08 15:21   ` distcc/ccache? Jon Masters
@ 2010-12-08 17:39   ` Darren Hart
  2 siblings, 0 replies; 6+ messages in thread
From: Darren Hart @ 2010-12-08 17:39 UTC (permalink / raw)
  To: Richard Purdie; +Cc: poky

On 12/08/2010 03:12 AM, Richard Purdie wrote:
> On Wed, 2010-12-08 at 01:51 -0500, Jon Masters wrote:
>> Anyone happen to know if poky plays nicely with distcc?
>
> I think most success has been with icecc in the past and there is a
> icecc class which has code to enable that. It turns out that compiling
> isn't the main bottleneck in builds though and icecc isn't something we
> test in Poky at this time, we just provide the same class OE has which
> may or may not work.

While not distributed compiling related, the following might add some 
perspective as to what to expect with more compile nodes.

I tried a poky-image-sdk (qemux86_64) build on a 4 socket Westmere 
machine (40 physical cores total, 80 hardware threads). I set my 
local.conf to:

BB_NUMBER_THREADS = "160"
PARALLEL_MAKE = "-j 160"

After a warm-up build (get everything downloaded) I cleaned tmp and 
sstate-cache and did another build. This one build took 118 minutes to 
complete.

$ time bitbake poky-image-sdk

<time passes & bitbake spews messages like g++ and a buggy stl program>

NOTE: Tasks Summary: Attempted 5619 tasks of which 300 didn't need to be 
rerun and 0 failed.

real    117m56.025s
user    961m28.822s
sys     464m27.318s


I checked the CPU load periodically, often finding it under 10%. While 
not a scientific test, what this tells me is that the build is 
relatively serialized and/or much of the process is blocked on I/O. It 
also suggests that a really big machine isn't all that helpful in 
speeding up builds (although 117m is nothing to be ashamed of!).

One could likely run four parallel builds on this system and have them 
complete in about the same amount of time. I ran 4 copies of the above 
load (even leaving the parallelism settings at 160). All 4 builds 
completed in between 186 and 192 minutes. The system load average about 
120 (just eyeballing it), with peaks as high as 700. All four builds 
used the same disk, suggesting build dependencies leading to build 
serialization is the primary bottleneck. So while you definitely want a 
good number of CPUs to build, that number tapers off rapidly. Somewhere 
around 10 I'd guess (for single builds). I'd have to run a number of 
more tests to be sure.

Anyway, hopefully that adds a datapoint of some use.

-- 
Darren Hart
Yocto Linux Kernel


^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2010-12-08 17:39 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2010-12-08  6:51 distcc/ccache? Jon Masters
2010-12-08 11:12 ` distcc/ccache? Richard Purdie
2010-12-08 13:42   ` distcc/ccache? Tom Rini
2010-12-08 15:21   ` distcc/ccache? Jon Masters
2010-12-08 15:53     ` distcc/ccache? Koen Kooi
2010-12-08 17:39   ` distcc/ccache? Darren Hart

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.