Code changes for review:
http://cr.opensolaris.org/~alanc/XW_NV_pmake/
The default number of jobs allowed to run in parallel will be the number of
virtual cpus reported as "on-line" by /usr/sbin/psrinfo.
You can override this with the DMAKE_MAX_JOBS environment variable, or by
putting an entry for the machine name in $HOME/.make.machines (file name
& format borrowed from ON build system). Entries there look like:
x11x max=10
x11s max=2
It also honors the MAKE environment variable - if this is set to "make", the
old normal make is used, if unset, or set to "dmake" then the parallel make
command is used.
On the systems I tested on:
Before After
Ultra 27 (4 cores x 2 threads => 8 jobs) 1:34 0:18
x11x.sfbay (Sun Fire X4100, 2 CPUs => 2 jobs) 2:12 1:15
x11s.sfbay (Sun Fire V240, 2 CPUS => 2 jobs) 5:00 2:03
These were not rigorously done - especially the ones on the public
build machines which may have had other builds being run by other
people, but clearly show large improvement.
--
-Alan Coopersmith- alan.coopersmith at sun.com
Sun Microsystems, Inc. - X Window System Engineering