From owner-freebsd-current@FreeBSD.ORG Thu Feb 14 07:26:41 2008 Return-Path: Delivered-To: current@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 9F66616A421 for ; Thu, 14 Feb 2008 07:26:41 +0000 (UTC) (envelope-from julian@elischer.org) Received: from outC.internet-mail-service.net (outC.internet-mail-service.net [216.240.47.226]) by mx1.freebsd.org (Postfix) with ESMTP id 7A3CF13C46A for ; Thu, 14 Feb 2008 07:26:41 +0000 (UTC) (envelope-from julian@elischer.org) Received: from mx0.idiom.com (HELO idiom.com) (216.240.32.160) by out.internet-mail-service.net (qpsmtpd/0.40) with ESMTP; Wed, 13 Feb 2008 23:26:40 -0800 Received: from julian-mac.elischer.org (localhost [127.0.0.1]) by idiom.com (Postfix) with ESMTP id E760F1271F4; Wed, 13 Feb 2008 23:26:39 -0800 (PST) Message-ID: <47B3ED30.2040404@elischer.org> Date: Wed, 13 Feb 2008 23:26:40 -0800 From: Julian Elischer User-Agent: Thunderbird 2.0.0.9 (Macintosh/20071031) MIME-Version: 1.0 To: Bill Moran References: <20080213073155.GA1340@hoeg.nl> <20080213090842.65b240e6.wmoran@potentialtech.com> In-Reply-To: <20080213090842.65b240e6.wmoran@potentialtech.com> Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Cc: Ian FREISLICH , Ed Schouten , current@freebsd.org Subject: Re: Testing box available. X-BeenThere: freebsd-current@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussions about the use of FreeBSD-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 14 Feb 2008 07:26:41 -0000 Bill Moran wrote: > In response to Ed Schouten : > >> * Ian FREISLICH wrote: >>> As an aside, a 64 way parallel make buildworld doesn't saturate the CPU. >> I'm not sure, but I think if you do this: >> >> make -j64 >> >> it only spawns 64 processes to handle the top level make process. This >> would mean we've got a couple of processes doing this: >> >> make -C bin >> make -C lib >> make -C sbin >> make -C usr.bin >> make -C usr.sbin >> >> and the other processes will just quit, because they don't have anything >> to do. Right? :-) > > Basically, -j tells make the _maximum_ number of jobs to run in parallel. > I frequently do -j99, but I've never seen more than about 20. You can't > just look at it for a second, either. Certain parts of the build > process have more parallelism available than others, so you might look > at it at a point where there are only a few. > > If you really want to saturate it, copy the src tree a few times and > start a make -j99 buildworld in all of them simultaneously :D > my memory is that ohk changed make to have a fifo with N (as in -j N) tokens in it and all child makes inherrit this fifo (or get it's name from an environment variable or something) and can only spawn extra makes if they can get a token. When they have finished their work they pu the token back into the fifo.. My memories of this may be somewhat inaccurate however.