Parallel compiling once again...
zmerch at 30below.com
Mon Aug 8 15:23:18 PDT 2005
OK, after a post on the LFS mailing list about compile times, I thought I'd
diddle with parallel compiling once again, centered around the 6.1-2 LFS
LiveCD.... and I got it to work! I'll build a hint hopefully by the weekend
(if my life doesn't go too insane again, like it's been for the last 3
weeks or so) but just for the record...
First, I wanted to get distcc running by hand from 2 computers booted from
System 1: Fujitsu P2120 laptop, Crusoe 933Mhz, 512Meg RAM, 40G HD, booted
from the LiveCD. This is the "client" or "target" machine.
System 2: Shuttle AMD 2400+ XP, 384Meg RAM, 80G HD, running Windows 2000!
;-) with a VirtualPC 2004 virtual computer with 160Meg RAM allocated to it,
with the LFS live CD virtually booted from the ISO file. Despite being a
virtual LFS boot on Winders, it's still a much faster unit.
Two more different critters on one desk would be tough to find... ;-)
Quickie benchmark, compiling ncurses (from the /sources dir - not thru
1) No parallel compiling whatsoever on the Crusoe laptop:
2) Distcc running on both, with the AMD as the "primary go-to system" and
'-j 5 CC=distcc' as the makefile parallel variable string:
Tack on a few more machines, and this could get fun... ;-)
OK, Through some other searching, it seems that both binutils and gcc
should *not* have any heartburn being parallel compiled. (You still need to
make sure that CFLAGS & CXXFLAGS are nulled, tho) -- the profiles already
sport the 'jlevel' variable.
However, the standard environment doesn't "follow thru" so I added it
manually. In my admittedly very minor testing, Chapter 5 binutils pass 1
with compiled without abending using the parallel make settings above, much
more quickly, too! ;-)
Anyway, I just subbed to the LFS-hints list, as I was considering becoming
the new maintainer for the parallel make hint (tho it's much easier now
than it was when it was first written) and should I make a separate hint
for the LFS LiveCD, or just a different subsection of the main hint for
users of the LiveCD?
Also: would the author of the net-setup script mind if I 'borrowed' it as a
template for a distcc-setup script? My shell script abilities are legendary
-- legendarily *bad* that is, and a little 'boost' in the right direction
would help me immensely. ;-)
I'd like to get it to the point where one can boot 3 or 4 machines from a
LiveCD, run a few scripts to set up the networking and distcc, start nALFS,
and have 'em all zooming towards a beautiful new LFS.
Thanks all, and I'll keep ya posted,
Roger "Merch" Merchberger
Roger "Merch" Merchberger | "Profile, don't speculate."
SysAdmin, Iceberg Computers | Daniel J. Bernstein
zmerch at 30below.com |
More information about the livecd