Dimitry Andric 54ff5d7323 Add a SUBDIR_PARALLEL option to bsd.subdir.mk, to allow make to process
all the SUBDIR entries in parallel, instead of serially.  Apply this
option to a selected number of Makefiles, which can greatly speed up the
build on multi-core machines, when using make -j.

This can be extended to more Makefiles later on, whenever they are
verified to work correctly with parallel building.

I tested this on a 24-core machine, with make -j48 buildworld (N = 6):

                before    stddev       after    stddev
                =======   ======       =======  ======
real time        1741.1     16.5         959.8     2.7
user time       12468.7     16.4       14393.0    16.8
sys  time        1825.0     54.8        2110.6    22.8

(user+sys)/real     8.2                   17.1

E.g. the build was approximately 45% faster in real time.  On machines
with less cores, or with lower -j settings, the speedup will not be as
impressive.  But at least you can now almost max out a machine with
buildworld!

Submitted by:	jilles
MFC after:	2 weeks
2014-03-26 22:30:38 +00:00
..
2013-07-28 18:44:17 +00:00
2012-11-29 05:16:50 +00:00
2013-10-01 18:41:53 +00:00
2013-09-06 23:11:19 +00:00
2014-02-12 09:59:48 +00:00
2014-01-13 17:14:10 +00:00
2014-01-22 17:15:17 +00:00
2014-03-16 02:32:44 +00:00
2013-07-18 05:46:33 +00:00
2013-01-01 18:28:21 +00:00
2013-05-08 21:04:19 +00:00
2014-03-14 06:29:43 +00:00
2013-05-13 18:13:50 +00:00
2013-03-19 21:40:14 +00:00
2013-05-16 21:04:56 +00:00
2012-11-15 15:06:21 +00:00