From: Darren Hart <dvhart@linux.intel.com>
To: Chris Tapp <opensource@keylevel.com>
Cc: Yocto Project <yocto@yoctoproject.org>
Subject: Re: Build time data
Date: Wed, 11 Apr 2012 17:30:47 -0700 [thread overview]
Message-ID: <4F862237.50200@linux.intel.com> (raw)
In-Reply-To: <1B707EEC-B001-45EA-BC0B-C0FF70BB7152@keylevel.com>
On 04/11/2012 01:42 PM, Chris Tapp wrote:
> Is there a page somewhere that gives a rough idea of how quickly a full build runs on various systems?
>
> I need a faster build platform, but want to get a reasonable price / performance balance ;-)
>
> I'm looking at something like an i7-2700K but am not yet tied...
>
We really do need to get some pages up on this as it comes up a lot.
Currently Yocto Project builds scale well up to about 12 Cores, so first
step is to get as many cores as you can. Sacrifice some speed for cores
if you have to. If you can do dual-socket, do it. If not, try for a six
core.
Next up is storage. We read and write a LOT of data. SSDs are one way to
go, but we've been known to chew through them and they aren't priced as
consumables. You can get about 66% of the performance of a single SSD
with a pair of good quality SATA2 or better drives configured in RAID0
(no redundancy). Ideally, you would have your OS and sources on an SSD
and use a RAID0 array to build on. This data is all recreatable, so it's
"OK" if you lose a disk and therefor ALL of your build data.
Now RAM, you will want about 2 GB of RAM per core, with a minimum of 4GB.
Finally, software. Be sure to run a "server" kernel which is optimized
for throughput as opposed to interactivity (like Desktop kernels). This
implies CONFIG_PREEMPT_NONE=y. You'll want a 64-bit kernel to avoid the
performance penalty inherent with 32bit PAE kernels - and you will want
lots of memory. You can save some IO by mounting your
its-ok-if-i-lose-all-my-data build partition as follows:
/dev/md0 /build ext4
noauto,noatime,nodiratime,commit=6000
As well as drop the journal from it when you format it. Just don't power
off your machine without properly shutting down!
That should get you some pretty good build times.
I run on a beast with 12 cores, 48GB of RAM, OS and sources on a G2
Intel SSD, with two Seagate Barracudas in a RAID0 array for my /build
partition. I run a headless Ubuntu 11.10 (x86_64) installation running
the 3.0.0-16-server kernel. I can build core-image-minimal in < 30
minutes and core-image-sato in < 50 minutes from scratch.
Hopefully that gives you some ideas to get started.
--
Darren Hart
Intel Open Source Technology Center
Yocto Project - Linux Kernel
next prev parent reply other threads:[~2012-04-12 0:31 UTC|newest]
Thread overview: 36+ messages / expand[flat|nested] mbox.gz Atom feed top
2012-04-11 20:42 Build time data Chris Tapp
2012-04-11 21:19 ` Autif Khan
2012-04-11 21:38 ` Bob Cochran
2012-04-12 0:30 ` Darren Hart [this message]
2012-04-12 0:43 ` Osier-mixon, Jeffrey
2012-04-12 4:39 ` Bob Cochran
2012-04-12 7:10 ` Darren Hart
2012-04-12 7:35 ` Joshua Immanuel
2012-04-12 8:00 ` Martin Jansa
2012-04-12 9:36 ` Joshua Immanuel
2012-04-12 14:12 ` Darren Hart
2012-04-12 23:37 ` Flanagan, Elizabeth
2012-04-13 5:51 ` Martin Jansa
2012-04-13 6:08 ` Darren Hart
2012-04-13 6:38 ` Martin Jansa
2012-04-13 7:24 ` Wolfgang Denk
2012-04-17 15:29 ` Martin Jansa
2012-04-12 14:08 ` Björn Stenberg
2012-04-12 14:34 ` Darren Hart
2012-04-12 22:43 ` Chris Tapp
2012-04-12 22:56 ` Darren Hart
2012-04-18 19:41 ` Chris Tapp
2012-04-18 20:27 ` Chris Tapp
2012-04-18 20:55 ` Darren Hart
2012-04-19 22:39 ` Chris Tapp
2012-04-13 8:45 ` Richard Purdie
2012-04-19 10:00 ` Koen Kooi
2012-04-19 12:48 ` Joshua Immanuel
2012-04-19 12:52 ` Richard Purdie
2012-04-19 13:47 ` Samuel Stirtzel
2012-04-13 8:47 ` Björn Stenberg
2012-04-13 14:41 ` Darren Hart
2012-04-19 7:24 ` Björn Stenberg
2012-04-19 14:11 ` Darren Hart
2012-04-13 9:56 ` Tomas Frydrych
2012-04-13 10:23 ` Koen Kooi
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=4F862237.50200@linux.intel.com \
--to=dvhart@linux.intel.com \
--cc=opensource@keylevel.com \
--cc=yocto@yoctoproject.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
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.