On Tue, Dec 21, 2010 at 1:56 AM, Bill Longman <bill.long...@gmail.com>wrote:
> On 12/18/2010 07:15 AM, Peter Humphrey wrote: > > On Saturday 18 December 2010 10:18:43 Neil Bothwick wrote: > > > >> I've found there's just too much overhead with distcc, plus much of > >> the work is still done locally. > > > > I expected that but I wanted to try it to see. > > > >> I have a couple of Atom boxes, a server and a netbook, and I've set up > >> a chroot for each on my workstation. In the chroot I have > >> FEATURES=buildpkg, using an NFS mounted PKGDIR available to both > >> computers, then I emerge -k on the Atom box. > > > > Maybe I'll go this way instead. Thanks for the idea, which is similar to > > one from YoYo Siska three days ago. > > I had my Atom 330 running as a distcc client for a long time. I have > several other speedy CPUs alongside it so it could spray plenty of > compilation requests out its gigabit NIC to various much beefier > machines. But as Neil stated, lots of the processing still occurs > locally, so as you increase nodes, you need to decrease the amount of > compilation done locally. With such a disparity between CPU, it takes > less time overall to just do it the way Neil describes - make a chroot > and then just build it with the intention that the slow CPUs will use > the binary build. > > You still need lots of CPU to compile, so a slow machine will still > compile slowly. If your client is a pokey 1.6GHz Atom and you're sending > jobs to two quad core 3GHz CPUs on your subnet, you'll soon see that the > Atom's load goes up toward 8 as it tries to bring those remote jobs > back. So, the four threads on my 330 get completely filled up and it's > dog slow. And it's even more painful when you use the preprocessor > because the client must zip the compile "construction" before it ships > it out, so you have even less CPU available for compilation (although > you get some of that back). > > All said and done, my back-of-the-napkin and seat-of-the-pants > calculation tells me that I still get a _minimum_ 25% reduction in > overall compile times with distcc. That's my experience after using > distcc for almost ten years with various configurations of network and > CPUs. > > I have set up my system as Neil described chroots for different systems on a fast computer. I use this setup for my gentoo boxes I have and it has made my compilations fast(er). I tried to use distcc with one U2300 celeron and some amd 4x cpu and the amd didn't really compile, because the U2300 was a bottleneck, so I decided to chroot it and been happy ever since. I have been thinking about a tool that could automagically start the emerge on the remote system. I thought about just ssh in with a script. But I am on so many flaky Internet connections that it isn't reliable enough. Petri