dim b4a5074609 MFC r263778:
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 r263833:

Enable parallel building for gnu/usr.bin and usr.bin/clang too.
2014-04-09 18:16:58 +00:00
..
2013-03-17 06:54:04 +00:00
2013-09-23 18:12:25 +00:00
2013-07-10 07:40:30 +00:00
2014-04-08 20:40:54 +00:00
2013-05-12 22:22:12 +00:00
2014-03-01 03:09:16 +00:00
2014-03-27 20:19:11 +00:00
2012-10-07 19:53:04 +00:00
2014-01-28 13:29:54 +00:00
2013-11-02 02:38:32 +00:00
2014-03-25 12:38:43 +00:00
2013-05-10 16:41:26 +00:00
2012-11-20 02:12:01 +00:00
2014-03-26 07:31:57 +00:00
2012-03-26 21:22:53 +00:00
2012-03-26 15:18:14 +00:00
2013-11-28 22:06:37 +00:00
2014-03-06 11:15:54 +00:00
2014-03-06 10:26:25 +00:00
2012-09-01 10:56:15 +00:00
2013-11-26 16:13:48 +00:00
2014-01-09 23:08:56 +00:00
2010-12-20 08:54:30 +00:00
2013-04-11 18:46:41 +00:00
2013-12-13 00:56:05 +00:00
2012-05-17 11:50:12 +00:00
2014-02-17 15:57:16 +00:00
2010-12-20 09:36:54 +00:00
2012-07-04 10:17:02 +00:00
2014-02-17 22:19:49 +00:00
2014-03-22 10:47:49 +00:00
2014-02-25 07:55:03 +00:00
2012-09-11 07:35:24 +00:00
2014-03-11 15:28:41 +00:00
2013-09-07 20:25:22 +00:00
2013-12-14 00:25:57 +00:00
2013-04-22 18:31:39 +00:00
2014-03-01 03:09:16 +00:00
2013-05-13 18:13:50 +00:00
2013-05-12 22:22:12 +00:00
2012-03-26 21:22:53 +00:00
2013-07-04 21:12:58 +00:00
2013-07-15 05:09:13 +00:00
2014-04-09 18:16:58 +00:00