Re: Build slowdown with 4 processors vs. 2 or 1?
Re: Build slowdown with 4 processors vs. 2 or 1?
- Subject: Re: Build slowdown with 4 processors vs. 2 or 1?
- From: Chris Espinosa <email@hidden>
- Date: Thu, 7 Dec 2006 22:39:36 -0800
On Dec 7, 2006, at 9:47 PM, Jim Wintermyre wrote: Here's a weird one. In one of my projects, when I build in XCode on the Mac Pro, it grinds to a halt after 4 files. There is a flurry of disk activity, and hardly any CPU activity. Top seems to indicate a lot of swapping going on. This goes on for around a couple minutes. What's weird is that if I set the number of processors to 2 or 1, the problem goes away. The entire project builds in less than 20 seconds, and the CPU load is pegged pretty much the entire time, which is what I'd expect. Any ideas what could be going on here? Any settings I could tweak?
We see this sometimes with processor scaling in Mac OS X. gcc maps in the precompiled header into each process as a private write file, then writes to it, forcing the kernel to do a copy-on-write operation each time. If you have 4 copies of gcc running simultaneously all mapping in the same precompiled header file and trying to write to private copies of it, the kernel can get saturated with the copy-on-write requests.
So after all that work to get your precompiled headers coherent, you may be amazed to find that that's the cause of the slowdown when scaling up to more processors. Sorry. It requires kernel work, which is happening now. For now you can cut back to 2 processors or make gratuitous differences in your precompiled headers :-), or use distributed builds.
Chris |
_______________________________________________
Do not post admin requests to the list. They will be ignored.
Xcode-users mailing list (email@hidden)
Help/Unsubscribe/Update your Subscription:
This email sent to email@hidden