Subject: Re: pkgsrc on SMP machines
To: Hubert Feyrer <feyrer@cs.stevens.edu>
From: Lars Nordlund <lars.nordlund@hem.utfors.se>
List: tech-pkg
Date: 12/17/2005 12:12:18
On Sat, 17 Dec 2005 04:10:12 +0100 (CET)
Hubert Feyrer <feyrer@cs.stevens.edu> wrote:
> On Fri, 16 Dec 2005, Lars Nordlund wrote:
> > Waiting for dependancies is something you want to do, if you want your
> > builds to succeed.
> 
> I think you didn't understand the whole concept (judging by your other 
> mails): the point is not to wait on dependencies with N-1 CPUs spinning 
> idle, but to build the depends with all N CPUs (if possible).

Please, try to understand when 'make parallel' is really useful. You
seem to think that all machines using pkgsrc start out with >300
packages installed. In that case I agree that the rest of the packages
probably already have their dependancies installed.

But suppose you have a fresh machine, or a machine you want to upgrade.
Then most of the central libraries like gtk/qt must be rebuilt!

Now suppose you use pkg_chk to generate a /usr/pkgsrc/pkgchk.conf file
it is *trivial* to generate a meta-pkg which depends on all the
packages you want installed. Running 'make parallel | ...' now will make
good use of multiple CPUs (or machines if you use clusterit). This will
*just work* and no mysterious multi-job-bugs in random packages' make
systems will happen.

The patch to do this is fairly simple. No *years of development* is
required. I posted it to the list many months ago.

> I'm sort of bored of repeating this again and again.

...


Best regards,
	Lars Nordlund