Date: Thu, 03 Oct 2002 02:01:28 +0000 (GMT) From: attila! <attila@hun.org> To: Stefan Farfeleder <e0026813@stud3.tuwien.ac.at> Cc: current@FreeBSD.ORG, Poul-Henning Kamp <phk@FreeBSD.ORG> Subject: make -j N [was: Re: Junior Kernel Hacker page updated...] Message-ID: <20021003020128.Zidp90333@hun.org>
index | next in thread | raw e-mail
I use make -j 4 consistently (daily at least) building both
the kernel and world on a Tyan 2642 1.2G SMP. j -4 drops
buildworld in 29-31 minutes vs 38-42 minutes with no -j
option and I have never seen the 'could sleep' message. When
I did a recovery with a generic kernel, the buildworld time
was somewhere above 50 in single CPU mode.
I might suggest that you need to cross a speed threshold
before the -j option makes a difference. I tried a -j 8 a
couple times, but the gain was less than 5%.
I might add, that in addition to a Tyan 2642 1.2G SMP, I do
have 512M DDR 266 memory and dual SCSI III 160 MB/sec 10,000
RPM 9G IBM 4ms access drives with swap on both drives --not
used while compiling both kernel and world simultaneously--
both at j -4. Today's simultaneous build went down in 8
minutes for buildkernel and 39 minutes for buildworld.
GEOM next....
Sent: Wed, 2 Oct 2002 23:40:28 +0200
+ On Sat, Sep 14, 2002 at 12:17:53PM +0200, Poul-Henning Kamp wrote:
+ >
+ > This is just to note that I have updated the JKH page with a lot of new
+ > stuff, so if your coding-pencil itches:
+ >
+ > http://people.freebsd.org/~phk/TODO/
+
+ |Make -j improvement
+ |
+ |make(1) with -j option uses a select loop to wait for events, and every
+ |100msec it drops out to look for processes exited etc. A pure "make
+ |buildworld" on a single-CPU machine is up to 25% faster that the best
+ |"make -j N buildworld" time on the same hardware. Changing to timeout
+ |to be 10msec improves things about 10%.
+ |I think that make(1) should use kqueue(2) instead, since that would
+ |eliminate the need for timeouts.
+
+ Ok, here's what I came up with. However, with the patch applied, each
+ 'make buildworld' on a SMP machine throws tons of
+
+ /freebsd/current/src/sys/vm/uma_core.c:1307: could sleep with "filedesc structure" locked from /freebsd/current/src/sys/kern/kern_event.c:959
+
+ at me and freezes badly at some point (no breaking into ddb possible).
+ This is totally repeatable. Is anybody able to reproduce (and maybe
+ fix) this?
+
+ Regards,
+ Stefan Farfeleder
To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-current" in the body of the message
help
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20021003020128.Zidp90333>
