From owner-freebsd-smp@FreeBSD.ORG Sun Apr 2 08:57:35 2006 Return-Path: X-Original-To: freebsd-smp@freebsd.org Delivered-To: freebsd-smp@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id ED8E316A41F for ; Sun, 2 Apr 2006 08:57:35 +0000 (UTC) (envelope-from andrew@scoop.co.nz) Received: from a2.scoop.co.nz (a2.scoop.co.nz [202.50.109.74]) by mx1.FreeBSD.org (Postfix) with ESMTP id D511A43D46 for ; Sun, 2 Apr 2006 08:57:34 +0000 (GMT) (envelope-from andrew@scoop.co.nz) Received: from a2.scoop.co.nz (localhost [127.0.0.1]) by a2.scoop.co.nz (8.13.6/8.13.1) with ESMTP id k328vUak018430; Sun, 2 Apr 2006 20:57:31 +1200 (NZST) (envelope-from andrew@scoop.co.nz) Received: from localhost (andrew@localhost) by a2.scoop.co.nz (8.13.6/8.13.1/Submit) with ESMTP id k328vUnW018427; Sun, 2 Apr 2006 20:57:30 +1200 (NZST) (envelope-from andrew@scoop.co.nz) X-Authentication-Warning: a2.scoop.co.nz: andrew owned process doing -bs Date: Sun, 2 Apr 2006 20:57:30 +1200 (NZST) From: Andrew McNaughton To: Kris Kennaway In-Reply-To: <20060401172122.GA9071@xor.obsecurity.org> Message-ID: <20060402204922.G18985@a2.scoop.co.nz> References: <009301c65418$cc029f30$65fd24c0@Eric> <64659004-E643-4044-AAED-076E0CC91977@foolishgames.com> <01a901c65493$77ad2740$65fd24c0@Eric> <442DC9B6.2090200@paradise.net.nz> <442EAA0A.8030704@he.iki.fi> <442EB37A.4080909@monkeytower.net> <20060401172122.GA9071@xor.obsecurity.org> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII; format=flowed X-Greylist: Sender IP whitelisted, not delayed by milter-greylist-2.0 (a2.scoop.co.nz [127.0.0.1]); Sun, 02 Apr 2006 20:57:31 +1200 (NZST) X-Virus-Scanned: ClamAV 0.88/1365/Sun Apr 2 10:49:56 2006 on a2.scoop.co.nz X-Virus-Status: Clean Cc: freebsd-smp@freebsd.org, Olaf Klein Subject: Re: smp and portupgrade X-BeenThere: freebsd-smp@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: FreeBSD SMP implementation group List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 02 Apr 2006 08:57:36 -0000 On Sat, 1 Apr 2006, Kris Kennaway wrote: > On Sat, Apr 01, 2006 at 07:08:10PM +0200, Olaf Klein wrote: >> Hi, >> >> i wonder how to make use of multiple processors or kernels when using >> portupgrade. Something like 'make -j10 buildworld' should be possible >> for portupgrade too?! >> Or is it like buildkernel: not recommended to use multiple threads? > > Well, buildkernel is fine to use with -j (not sure where you read > otherwise), but ports cannot be built this way. The main issue seems to be that various targets in the ports system not waiting for the previous target to be built. Eg 'install' starts without waiting for 'build'. Depending on the particular port however 'make -j 10 build' very often does work. I appreciate that it's quite a lot of work to implement, but... It would be nice if the ports system itself were multi-thread clean. Presumably we'd want a flag in each appropriate port's makefile which enabled a multi-threaded build where this is known to work. Equally, it would be nice if portupgrade were able to work on separate ports in parallel where dependency structures allow for it. Are there any fundamental reasons why such things couldn't work? Andrew ------------------------------------------------------------------- Andrew McNaughton http://www.scoop.co.nz/ andrew@scoop.co.nz Mobile: +61 422 753 792 pgp keyid: 70F6C32D -- "We are trying to figure out how you conduct a war against something other than a nation-state and how ... you conduct a war in countries that you are not at war with," -- Donald Rumsfeld, 27 Jan 2006