[Cerowrt-devel] speeding up builds

Dave Taht dave.taht at gmail.com
Sun Apr 29 22:24:51 EDT 2012

On Sun, Apr 29, 2012 at 6:59 PM, Dave Taht <dave.taht at gmail.com> wrote:
> On Sun, Apr 29, 2012 at 6:42 PM, Outback Dingo <outbackdingo at gmail.com> wrote:
>> On Sun, Apr 29, 2012 at 8:15 PM, Dave Taht <dave.taht at gmail.com> wrote:
>>> I finally acquired a machine with 32GB of ram, an intel 3930k (6
>>> cores), and an SSD.
>>> I put the build_dir, /tmp and /var/tmp on ramdisks, and...
>>> This cut a complete cerowrt build (including toolchain) down from >
>>> 3.5 hrs down to under 45 minutes.
>>> Without the toolchain rebuild, but after a make clean (to rebuild the
>>> packages and kernel), it's about 28 minutes.
>>> I can see that it is possible to parallelize things more to maybe chop
>>> another 30% of of things...
>>> ...but I'm glad to have 3 hrs of my life back, per build.
>>> I wanted to figure out to what extent modern hardware would enhance
>>> the existing buildbot system.
>>> Now I know...
>> odd my laptop will do a full build with tool chain in about an
>> hour..... its only a core i3 with 6gb and an ssd
> The best box that I had was huchra, a dual quad-core xeon circa 2006,
> with 8GB of memory and mirrored drives.
> A 'full build' of cero is 578 packages, some of which are rather big,
> as well as building the sdk and cross development kit.
> For comparison purposes, I just built linux-3.3.4 for ubuntu (so this
> includes the kpkg overhead)
> real    11m12.286s
> user    67m11.076s
> sys     7m19.955s
> I am puzzled. I end up with only 75MB for disk buffers, according to
> top, and I would assume that 25% of memory in this case would be good
> for disk buffers.
> I do like using ramdisks for this job, (why write to media unless you
> have to?) but it seems saner to have the disk cache, caching.

Ah. I assume that 'cached' here means disk buffers. Maybe.

            total       used       free     shared    buffers     cached
Mem:      32927452   28799604    4127848          0      75600   25122928
-/+ buffers/cache:    3601076   29326376
Swap:     33529852    1527668   32002184

Believe me, after doing the number of builds I've done this year, and
especially in the past two months, finding ways to shave even a few
minutes more off the build(s) would be a godsend.

This particular box can do 64GB of ram, and doing that would add two
channels to the memory controller, assuming I plugged the ram in

anyway, a pure kernel build (no kpkg),

time make -j 24

real	7m33.494s
user	73m3.146s
sys	6m31.648s

I see from the phoronix benchmarks that they claim a box of this
caliber can do a kernel build in under 60sec, but I doubt they are
using a kernel of this size.

I've tossed the kernel .deb files, kernel config, script to make it a
deb, and patches here:


(note - TOTALLY untested on x86_64 as yet -)

I'd gotten out of the habit of maintaining debloat-testing mostly
because doing a kernel build was taking so bloody long.

>>> --
>>> Dave Täht
>>> SKYPE: davetaht
>>> US Tel: 1-239-829-5608
>>> http://www.bufferbloat.net
>>> _______________________________________________
>>> Cerowrt-devel mailing list
>>> Cerowrt-devel at lists.bufferbloat.net
>>> https://lists.bufferbloat.net/listinfo/cerowrt-devel
> --
> Dave Täht
> SKYPE: davetaht
> US Tel: 1-239-829-5608
> http://www.bufferbloat.net

Dave Täht
SKYPE: davetaht
US Tel: 1-239-829-5608

More information about the Cerowrt-devel mailing list