From owner-freebsd-questions@FreeBSD.ORG Wed May 17 21:06:43 2006 Return-Path: X-Original-To: freebsd-questions@freebsd.org Delivered-To: freebsd-questions@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id B3DC916AB74 for ; Wed, 17 May 2006 21:06:43 +0000 (UTC) (envelope-from freebsd-questions@m.gmane.org) Received: from ciao.gmane.org (main.gmane.org [80.91.229.2]) by mx1.FreeBSD.org (Postfix) with ESMTP id 3A3A443D46 for ; Wed, 17 May 2006 21:06:43 +0000 (GMT) (envelope-from freebsd-questions@m.gmane.org) Received: from list by ciao.gmane.org with local (Exim 4.43) id 1FgTE7-0007SV-Kp for freebsd-questions@freebsd.org; Wed, 17 May 2006 23:06:39 +0200 Received: from r5k156.chello.upc.cz ([86.49.10.156]) by main.gmane.org with esmtp (Gmexim 0.1 (Debian)) id 1AlnuQ-0007hv-00 for ; Wed, 17 May 2006 23:06:39 +0200 Received: from martinkov by r5k156.chello.upc.cz with local (Gmexim 0.1 (Debian)) id 1AlnuQ-0007hv-00 for ; Wed, 17 May 2006 23:06:39 +0200 X-Injected-Via-Gmane: http://gmane.org/ To: freebsd-questions@freebsd.org From: martinko Date: Wed, 17 May 2006 23:06:04 +0200 Lines: 43 Message-ID: References: <200605151112.33416.work@ashleymoran.me.uk> <20060515090018.4015d7e1.wmoran@collaborativefusion.com> Mime-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit X-Complaints-To: usenet@sea.gmane.org X-Gmane-NNTP-Posting-Host: r5k156.chello.upc.cz User-Agent: Mozilla/5.0 (X11; U; FreeBSD i386; en-US; rv:1.8.0.2) Gecko/20060511 SeaMonkey/1.0.1 In-Reply-To: <20060515090018.4015d7e1.wmoran@collaborativefusion.com> Sender: news Subject: Re: Please explain make -j to my little brain X-BeenThere: freebsd-questions@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: User questions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 17 May 2006 21:07:09 -0000 Bill Moran wrote: > On Mon, 15 May 2006 11:12:33 +0100 > Ashley Moran 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