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>
next in thread | raw e-mail | index | archive | help
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
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20021003020128.Zidp90333>