* 2.6.18-rc1 make -j4 does not run parallel
@ 2006-08-13 2:58 Keith Owens
2006-08-13 8:08 ` Sam Ravnborg
0 siblings, 1 reply; 2+ messages in thread
From: Keith Owens @ 2006-08-13 2:58 UTC (permalink / raw)
To: linux-kernel; +Cc: sam
Dual cpu system.
'echo $$' reports current id is 4972
export KBUILD_OUTPUT=../obj
make -j4
Building a 2.6.17.7 tree, 'LANG= pstree -pl 4972' shows multiple tasks
running in parallel. Even here it is only running 2 instead of the 4
that I expect.
bash(4972)---make(7519)---make(7522)-+-make(7721)---make(8198)---make(8513)---sh(8565)---gcc(8566)---gcc(8572)-+-as(8574)
| `-cc1(8573)
`-make(8077)---sh(8558)---gcc(8559)---gcc(8569)-+-as(8571)
`-cc1(8570)
build a 2.6.18-rc1 or later tree, make -j4 does not run parallel. All
pstree output shows a single branch, like this.
bash(4972)---make(30031)---make(30034)---make(31797)---make(2840)---sh(3678)---gcc(3681)---gcc(3682)---cc1(3683)
Using 'make -j' without a number or 'make -j<n>' where <n> is greater
than 4 does show parallel build behaviour. Looks like something is
decrementing -j<n> as you go down the make tree and decrementing it
enough that it ends up in a serial build.
^ permalink raw reply [flat|nested] 2+ messages in thread
* Re: 2.6.18-rc1 make -j4 does not run parallel
2006-08-13 2:58 2.6.18-rc1 make -j4 does not run parallel Keith Owens
@ 2006-08-13 8:08 ` Sam Ravnborg
0 siblings, 0 replies; 2+ messages in thread
From: Sam Ravnborg @ 2006-08-13 8:08 UTC (permalink / raw)
To: Keith Owens; +Cc: linux-kernel
On Sun, Aug 13, 2006 at 12:58:51PM +1000, Keith Owens wrote:
> Dual cpu system.
> 'echo $$' reports current id is 4972
> export KBUILD_OUTPUT=../obj
> make -j4
>
> Building a 2.6.17.7 tree, 'LANG= pstree -pl 4972' shows multiple tasks
> running in parallel. Even here it is only running 2 instead of the 4
> that I expect.
>
> bash(4972)---make(7519)---make(7522)-+-make(7721)---make(8198)---make(8513)---sh(8565)---gcc(8566)---gcc(8572)-+-as(8574)
> | `-cc1(8573)
> `-make(8077)---sh(8558)---gcc(8559)---gcc(8569)-+-as(8571)
> `-cc1(8570)
>
> build a 2.6.18-rc1 or later tree, make -j4 does not run parallel. All
> pstree output shows a single branch, like this.
>
> bash(4972)---make(30031)---make(30034)---make(31797)---make(2840)---sh(3678)---gcc(3681)---gcc(3682)---cc1(3683)
>
> Using 'make -j' without a number or 'make -j<n>' where <n> is greater
> than 4 does show parallel build behaviour. Looks like something is
> decrementing -j<n> as you go down the make tree and decrementing it
> enough that it ends up in a serial build.
Thanks. I will try to look into this within a few days - it looks
strange. But you pstree is a great way to see when it happens.
I have been tossing around with an idea to do some of the veru initial
steps in a shell script rather than in make. This should allow us to
bring down the make invocations but this bug needs to be understood
first.
Sam
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2006-08-13 8:08 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2006-08-13 2:58 2.6.18-rc1 make -j4 does not run parallel Keith Owens
2006-08-13 8:08 ` Sam Ravnborg
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
all inboxes | Powered by JetHome®