Date: Tue, 10 Apr 2007 19:44:47 +0200 From: Pav Lucistnik <pav@FreeBSD.org> To: Benjamin Lutz <mail@maxlor.com> Cc: ports@FreeBSD.org Subject: Re: parallel builds revisited Message-ID: <1176227087.27233.8.camel@ikaros.oook.cz> In-Reply-To: <200704100452.40574.mail@maxlor.com> References: <200704100452.40574.mail@maxlor.com>
next in thread | previous in thread | raw e-mail | index | archive | help
--=-eNngAbpp4A7dbewPFXHm Content-Type: text/plain; charset=ISO-8859-2 Content-Transfer-Encoding: quoted-printable Benjamin Lutz p=ED=B9e v =FAt 10. 04. 2007 v 04:52 +0200: > Some time ago, after buying a Core 2 Duo system, I've become interested=20 > in doing something about the inherent single-threadedness of the ports.=20 > Even though I have a dualcore machine, ports builds only ever use one=20 > core. I started thinking about various approaches to introduce=20 > parallelism to ports builds and wrote down my thoughts here: > http://marc.info/?l=3Dfreebsd-ports&m=3D116124997126657&w=3D2 I have same thoughts, and I wrote about it on Project Ideas page. That text materialized into a Summer of Code proposal, which is most probably going to get funded. So stay tuned. However, the proposal concentrates mainly on allowing several ports to build in parallel. > Well, since then I've tinkered with various approaches. I concentrated=20 > on using make's -j feature. After adding the flag to the gmake=20 > invocation in bsd.port.mk, I quickly noticed that some ports can take=20 > advantage of the flag and thus build much more quickly (eg, all the KDE=20 > ports),=20 Because they use gmake > others are still single-threaded (X.org),=20 Because they use imake > but of course there are also ports that fail to build (Openoffice.org).=20 Now that means nothing :) > This means that a per-port switch is required. Yes, a whitelist approach looks best. > 3) Save this to /usr/local/etc/parallel_builds.conf: > http://www.maxlor.com/temp/parallel_builds.conf . > This is a list of ports as stored in PKGORIGIN, or as > pkg_info -o reports them. I was thinking about having it embedded in every port's Makefile directly, instead. Something like USE_MAKE_JOBS=3D 2 > So now I would like to invite you test, comment, or simply philosophize=20 > on these changes. I have great interest in this development. This is a highly desirable feature to have. --=20 Pav Lucistnik <pav@oook.cz> <pav@FreeBSD.org> Linux is a happy free-for-all chaos. --=-eNngAbpp4A7dbewPFXHm Content-Type: application/pgp-signature; name=signature.asc Content-Description: Toto je =?UTF-8?Q?digit=C3=A1ln=C4=9B?= =?ISO-8859-1?Q?_podepsan=E1?= =?UTF-8?Q?_=C4=8D=C3=A1st?= =?ISO-8859-1?Q?_zpr=E1vy?= -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.7 (FreeBSD) iD8DBQBGG80MntdYP8FOsoIRAk7+AJ4z6Vqpo1Pqgi4dqW0O2CjjjfGRoACgtLFd CxX7r6UX4+D5LMbuOk6z1SA= =RO4p -----END PGP SIGNATURE----- --=-eNngAbpp4A7dbewPFXHm--
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?1176227087.27233.8.camel>