Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 26 May 2009 08:19:17 +0200
From:      David Naylor <naylor.b.david@gmail.com>
To:        Maho NAKATA <chat95@mac.com>
Cc:        pgollucci@p6m7g8.com, itetcu@freebsd.org, pav@freebsd.org, freebsd-ports@freebsd.org
Subject:   Re: MAKE_JOBS_UNSAFE (some more ports)
Message-ID:  <200905260819.23178.naylor.b.david@gmail.com>
In-Reply-To: <20090526.111343.48515131.chat95@mac.com>
References:  <200905251003.15408.naylor.b.david@gmail.com> <200905252247.32725.naylor.b.david@gmail.com> <20090526.111343.48515131.chat95@mac.com>

next in thread | previous in thread | raw e-mail | index | archive | help
--nextPart1882398.svgb3dcgBh
Content-Type: text/plain;
  charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable
Content-Disposition: inline

On Tuesday 26 May 2009 04:13:43 Maho NAKATA wrote:
> Hi David,
>
> Thanks kudos for tough works and discussions!

:-)

> David, is this the final patch which I should test?

This should make OOo* work. =20

This should be final for OOo3 and the second part of the bsd.ports.mk patch=
=20
however the rest of bsd.ports.mk may need discussion. =20

pav: ${_MAKE_JOBS:C/-j//} won't work with DISABLE_MAKE_JOBS (or=20
MAKE_JOBS_UNSAFE) since it needs to always be a positive number, secondly i=
t=20
still cannot be used for conditional code (since it is defined in the post=
=20
section, but the whole code could always be moved to the pre section).=20

> Best,
>
> From: David Naylor <naylor.b.david@gmail.com>
> Subject: Re: MAKE_JOBS_UNSAFE (some more ports)
> Date: Mon, 25 May 2009 22:47:29 +0200
>
> > On Monday 25 May 2009 20:01:25 Ion-Mihai Tetcu wrote:
> >> On Mon, 25 May 2009 10:03:12 +0200
> >>
> >> David Naylor <naylor.b.david@gmail.com> wrote:
> >> > On Sunday 24 May 2009 21:37:45 Ion-Mihai Tetcu wrote:
> >> > > On Sun, 24 May 2009 10:26:23 +0200
> >> > >
> >> > > David Naylor <naylor.b.david@gmail.com> wrote:
> >> > > > On Sunday 24 May 2009 00:16:37 Maho NAKATA wrote:
> >> > > > > Hi I tested it yesterday,
> >> > > > >
> >> > > > > 1.
> >> > > > > I need
> >> > > > >
> >> > > > > > MAKE_JOBS_SAFE=3D        yes
> >> > > > >
> >> > > > > in the Makefile.
> >> > > >
> >> > > > Yes, you would need that.  I believe that will be default.
> >> > > >
> >> > > > > 2. with above patch, ooo2 doesn't launch parallele jobs.
> >> > > >
> >> > > > I spotted that problem after submitting the patch, if you
> >> > > > explicitly set MAKE_JOBS_NUMBER to something it will work.
> >> > > >
> >> > > > The problem is that ooo2 does (in effect):
> >> > > > .if (${MAKE_JOBS_NUMBER} > 1)
> >> > > > # Stuff
> >> > > > .else
> >> > > > # Other stuff
> >> > > > .endif
> >> > > > and that doesn't work as expected with MAKE_JOBS_NUMBER=3D`sysctl
> >> > > > kern.smp.cpus` as the command is not resolved.
> >> > >
> >> > > w/o patch
> >> > > editors/openoffice.org-3	openoffice.org-3.1.0	4:53:27
> >> > >
> >> > > with patch:
> >> > > + MAKE_JOBS_SAFE=3D	yes
> >> > > + MAKE_JOBS_NUMBER=3D	4
> >> > > + MAXPROCESSES?=3D	${MAKE_JOBS_NUMBER}
> >> > > + MAXMODULES?=3D		${MAKE_JOBS_NUMBER}
> >> > >
> >> > > editors/openoffice.org-3	openoffice.org-3.1.0	48:51
> >> > >
> >> > > The build is done in
> >> > > /dev/md0 on /usr/local/tinderbox/7-STABLE-FPT-NPD (ufs,
> >> > > asynchronous, local, noatime)
> >> >
> >> > Wow, that is quite a speedup.  Is it even possible (4 * 60 + 53)/4 =
=3D
> >> > 73, and you get 48 (that is 152% scaling efficiency).  This would
> >> > mean a serious performance problem with the ooo3 build script and
> >> > MAX* =3D1.
> >> >
> >> > I'll make a patch tonight (+10 hours) that will fix ooo2 in the
> >> > default case. You can test ooo2 with patch and MAKE_JOBS_NUMBER
> >> > preset (not using default value) and MAKE_JOBS_SAFE=3Dyes.
> >>
> >> BTW, what about using the same vars for parallel building in all OOo
> >> port?
> >
> > Done, the following patch uses MAKE_JOBS_NUMBER for all the variables in
> > OOo.
> >
> > It also tries to be efficient when resolving the MAKE_JOBS_NUMBER to a
> > value (only done when a port sets USE_MAKE_JOBS, as in the OOo2-RC and
> > OOo2 case).
> >
> > This should fix OOo2* builds and support such use cases for other
> > ports...



--nextPart1882398.svgb3dcgBh
Content-Type: application/pgp-signature; name=signature.asc 
Content-Description: This is a digitally signed message part.

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2.0.9 (FreeBSD)

iEUEABECAAYFAkobiesACgkQUaaFgP9pFrLHhACgjW1/Abr/eg+v/cYKKgqvX1OX
nXIAmPnarm8AhkrrJIpRTJfj+glcoeg=
=pADl
-----END PGP SIGNATURE-----

--nextPart1882398.svgb3dcgBh--



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200905260819.23178.naylor.b.david>