Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 19 Apr 1997 02:43:32 -0700 (PDT)
From:      asami@vader.cs.berkeley.edu (Satoshi Asami)
To:        imp@village.org
Cc:        current@freebsd.org
Subject:   Re: Speed deamons: How to build a build box?
Message-ID:  <199704190943.CAA01401@blimp.mimi.com>
In-Reply-To: <E0wIJ9F-0005Yv-00@rover.village.org> (message from Warner Losh on Fri, 18 Apr 1997 13:16:41 -0600)

next in thread | previous in thread | raw e-mail | index | archive | help
As far as I know, the time for a make world (or any large compilation)
is spend in (a) disk seeks and (b) CPU.  Since people have already
commented on your on-board controller and such, I'll just add a few
points.

 * 	3) Buy a faster disk, ultrawide scsi 7200 or faster disk.

Get as many small and fast disks as you can.  7200 RPM 2GB disks would
be great, not because they are 7200 RPM (you don't need sequential
bandwidth for compilation) but because they seek faster than the 5400
or 4500 RPM drives.  2GB Atlas I's are selling around $500 now (if you
can find them).

Lay out your partitions carefully.  Remember, having things on
multiple disks won't help a bit if you have one process (cpp) waiting
for random seeks all over the disk surface.  Make your necessary
partitions small, so for instance if you have two disks, lay them out
like this:

disk1   / swap /var /usr /usr/src /rest1
disk2   /(backup) swap /usr/obj /rest2

Put your home directories and stuff on /rest1 and /rest2, and make the 
other filesystems as small as possible.  That way the head will have
to seek only the first quarter of each disk (or something like that).

That way you can also mount /usr/src and /usr/obj async without
worrying too much.

Also, if you can have multiple outstanding reads, you should be able
to profit from the additional spindles.  Does "make -j3 world" work
now?

 * 	4) Overclock the 180 to 200 or 233 (I have a good heat sink and fan)

That will definitely help.  When I went from 200 to 233, the make
world time improved by 10%, even with nothing mounted async.  Since
your 180 -> 200 includes a memory/IO bus speedup, it is even nicer.

 * 	5) Get a second scsi bus

A single SCSI bus/controller can support a great number of random
accesses.  (But if your on-board controller is not on par with
expansion slot counterparts, of course it will help.)

Satoshi



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199704190943.CAA01401>