From owner-freebsd-hackers@FreeBSD.ORG Wed Dec 5 23:52:00 2012 Return-Path: Delivered-To: freebsd-hackers@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id D4F85687 for ; Wed, 5 Dec 2012 23:52:00 +0000 (UTC) (envelope-from ml@my.gd) Received: from mail-wi0-f174.google.com (mail-wi0-f174.google.com [209.85.212.174]) by mx1.freebsd.org (Postfix) with ESMTP id 4F5F08FC13 for ; Wed, 5 Dec 2012 23:52:00 +0000 (UTC) Received: by mail-wi0-f174.google.com with SMTP id hm9so49904wib.13 for ; Wed, 05 Dec 2012 15:51:59 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20120113; h=references:in-reply-to:mime-version:content-transfer-encoding :content-type:message-id:cc:x-mailer:from:subject:date:to :x-gm-message-state; bh=qU6ogtwuOd174fzk6RQ+Um64qx0a4rOW8X/FXj4rDt8=; b=i5BdvGhY53+kBobPT7mRJTKAUFxN3EcnotyMyiCkj3sfSWJWG5z8eca/EXKd+sB9zk c9rwDwNi5RNMhdJugSP0EAs3fC6Gufagc1RqsiXkWjJi3Xzu2EsizzsuCo294jt1oli4 sJLlEfCgvVhglBFwWicj0BWIgxPwkEHtF4UWVSh8C2MR1W0u3dSxoeGrNZhQawTGpnMv RyCGm8KWaCvF9zze1uiRxf6ojzc7JI/d+JEhA6aioNr6fzG608Z7f43W8GA4GZX6dq5t 1v/jWq/y35QzbRIm5uZY7ptxyJytBxnBpZx5FM/YuEwqDxQ+Lq/pndzJN5gPNy0CggUF dEuA== Received: by 10.216.141.134 with SMTP id g6mr7062179wej.52.1354751519440; Wed, 05 Dec 2012 15:51:59 -0800 (PST) Received: from [10.9.246.181] ([92.90.20.47]) by mx.google.com with ESMTPS id dw4sm8657137wib.1.2012.12.05.15.51.57 (version=TLSv1/SSLv3 cipher=OTHER); Wed, 05 Dec 2012 15:51:58 -0800 (PST) References: <5083D84E.50903@freebsd.org> <201212041052.51476.jhb@freebsd.org> <201212051142.18361.jhb@freebsd.org> <0EC857C9-4C1B-467D-8499-B493401B64BC@bsdimp.com> In-Reply-To: <0EC857C9-4C1B-467D-8499-B493401B64BC@bsdimp.com> Mime-Version: 1.0 (1.0) Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset=us-ascii Message-Id: <20E25F79-2C53-45FD-BB7F-060AC9B26245@my.gd> X-Mailer: iPhone Mail (9A405) From: Damien Fleuriot Subject: Re: kernel module parallel build? Date: Thu, 6 Dec 2012 00:51:17 +0100 To: Warner Losh X-Gm-Message-State: ALoCoQk4bEuFTohImoMcG6J3FRb7JYrFR2KRNymEaocNvNl87W39Jic2n3LrjhHffKvjHHKJafY4 Cc: "freebsd-hackers@freebsd.org" , Ryan Stone , FreeBSD Current , AndreOppermann X-BeenThere: freebsd-hackers@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: Technical Discussions relating to FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 05 Dec 2012 23:52:01 -0000 On 5 Dec 2012, at 18:39, Warner Losh wrote: >=20 > On Dec 5, 2012, at 9:42 AM, John Baldwin wrote: >=20 >> On Tuesday, December 04, 2012 2:41:32 pm Ryan Stone wrote: >>> On Tue, Dec 4, 2012 at 10:52 AM, John Baldwin wrote: >>>=20 >>>> Hmm, I certainly see the module directories being built in parallel. S= ome >>>> of >>>> the make jobs may not be as obvious since links are silent (no output >>>> unless >>>> there is an error). >>>>=20 >>>>=20 >>> This is definitely not the behaviour that I see trying to build any vers= ion >>> of FreeBSD. I see the same behaviour as Andre: the depend and all targe= ts >>> both iterate through the module directories sequentially. It never buil= ds >>> two module subdirectories concurrently. >>=20 >> Hmm, I think I was confused by seeing kernel builds intermingle with the=20= >> associated modules. sys/modules/Makefile uses bsd.subdir.mk. I think I s= ee=20 >> similar things in world builds where I will see parallel builds of bin vs= sbin=20 >> vs usr.bin vs usr.sbin, but within each of those directories the builds g= o=20 >> sequentially. I think you would need to change bsd.subdir.mk if you want= to=20 >> fix this. >=20 > The builds are in parallel, just that the parallelism is low because it is= only parallel within the module being built. Would love to see a fix. >=20 > Warner >=20 All trolling aside, I believe an awesome fix to be setting module override i= n /etc/make.conf to only build the 4-5 specific modules one needs. To be honest I think this configuration tweak should be advertised a bit mor= e as it definitely speeds up kernel builds. I would be happy to check if this is advertised in the handbook in the "rebu= ilding kernel" section and enhance its visibility if required. I can provide en_US and fr_FR.=