From owner-freebsd-ports@FreeBSD.ORG Thu Apr 12 20:30:06 2007 Return-Path: X-Original-To: freebsd-ports@freebsd.org Delivered-To: freebsd-ports@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id 847D116A402 for ; Thu, 12 Apr 2007 20:30:06 +0000 (UTC) (envelope-from youshi10@u.washington.edu) Received: from mxout7.cac.washington.edu (mxout7.cac.washington.edu [140.142.32.178]) by mx1.freebsd.org (Postfix) with ESMTP id 650E613C4AE for ; Thu, 12 Apr 2007 20:30:06 +0000 (UTC) (envelope-from youshi10@u.washington.edu) Received: from hymn03.u.washington.edu (hymn03.u.washington.edu [140.142.12.169]) by mxout7.cac.washington.edu (8.13.7+UW06.06/8.13.7+UW07.03) with ESMTP id l3CKU5hW030576 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NO) for ; Thu, 12 Apr 2007 13:30:06 -0700 Received: from localhost (localhost [127.0.0.1]) by hymn03.u.washington.edu (8.13.7+UW06.06/8.13.7+UW07.03) with ESMTP id l3CKU538007613 for ; Thu, 12 Apr 2007 13:30:05 -0700 X-Auth-Received: from [192.55.52.4] by hymn03.u.washington.edu via HTTP; Thu, 12 Apr 2007 13:30:05 PDT Date: Thu, 12 Apr 2007 13:30:05 -0700 (PDT) From: youshi10@u.washington.edu To: freebsd-ports@freebsd.org In-Reply-To: <461E8CF3.3030203@gmx.de> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII; format=flowed X-PMX-Version: 5.3.0.289146, Antispam-Engine: 2.5.0.283055, Antispam-Data: 2007.4.12.131834 X-Uwash-Spam: Gauge=IIIIIII, Probability=7%, Report='NO_REAL_NAME 0, __CT 0, __CT_TEXT_PLAIN 0, __HAS_MSGID 0, __MIME_TEXT_ONLY 0, __MIME_VERSION 0, __SANE_MSGID 0' Subject: Re: parallel builds revisited X-BeenThere: freebsd-ports@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Porting software to FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 12 Apr 2007 20:30:06 -0000 On Thu, 12 Apr 2007, [LoN]Kamikaze wrote: > Benjamin Lutz wrote: >> On Thursday 12 April 2007 11:06, Garrett Cooper wrote: >>> I dunno how you want to approach this, but gmake does recommend 2 >>> jobs be run in parallel for HTT enabled chips, and 3 or 4 jobs for a >>> dual core machines. >>> -Garrett >> >> So far the approach is one job per CPU. I'll do some benchmarks lateron >> to determine wether it really helps to run more jobs. For the KDE >> ports, my gut feeling is that the improvement would be negligible. I'll >> have to evaluate non-C++ ports like gnome-*, where the compilation time >> per file is shorter. > > I find the benefit especially big with Gecko based ports like Firefox or > Thunderbird. > >> Of course, to make proper use of distcc, at least #cores + 1 jobs are >> required. I'll keep that in mind. > > The recommendation of the Distcc developers is 2 jobs per core, as long as > the machines contain sufficient memory. > > My personal experience says that it's rarely possible to divide a Makefile > into more than 6 threads. Perhaps, but that's most likely just a limitation behind gmake. With a bit of a rewrite by the devs it could better utilize lookahead and dependency mapping I would think than it currently does. Needless to say this could be an easily squashed issue for making builds go faster, particularly with the large multicore / multiprocessor machines present nowadays. -Garrett