Date: Wed, 17 May 2006 23:06:04 +0200 From: martinko <martinkov@pobox.sk> To: freebsd-questions@freebsd.org Subject: Re: Please explain make -j to my little brain Message-ID: <e4g37s$evj$2@sea.gmane.org> In-Reply-To: <20060515090018.4015d7e1.wmoran@collaborativefusion.com> References: <200605151112.33416.work@ashleymoran.me.uk> <20060515090018.4015d7e1.wmoran@collaborativefusion.com>
next in thread | previous in thread | raw e-mail | index | archive | help
Bill Moran wrote: > On Mon, 15 May 2006 11:12:33 +0100 > Ashley Moran <work@ashleymoran.me.uk> wrote: > >> Hi >> >> I've read the following snippet out of the handbook hundreds of times and >> still don't understand it. I even asked one of the developers I work with >> and he was baffled too. >> >>> It is now possible to specify a -j option to make which will cause it to >>> spawn several simultaneous processes. This is most useful on multi-CPU >>> machines. However, since much of the compiling process is IO bound rather >>> than CPU bound it is also useful on single CPU machines. >> What I want to know is, if compiling is IO bound, and you increase the number >> of simultaneous processes compiling your world, where do the extra processes >> get data from if the IO bandwidth is all used. >> >> Have I misunderstood the term IO bound? Please help, I feel like a right >> tool. > > The key to that quote is the placement of the term "much". As in "much of > the compiling process" ... not all of it. > > Generally, while one process is waiting on disk IO, another can be using > the CPU. As a result, you can get closer to 100% usage of the machine, > which won't happen if you batch the whole thing. > >> Just as a side line... does anybody know the best -j value to build world on a >> 4-core box? > > I generally quadruple the # of cores, so I'd use -j16. I couldn't tell you > authoritatively what is _best_, though. > hi, i remember from mailing lists there used to be a problem with using "-j" while compiling kernel or world or ports or sth. is it resolved now pls? cheers, martin
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?e4g37s$evj$2>