views:

304

answers:

3

Last version or XCode (3.2.1) is running very slow on OS X 10.6.

What kinds of tweaks can you do to your Mac in order to speedup Xcode build process.

I'm not looking for general hints like how to restructure your projects, just tweaks that are related to environment.

For example I remember that on Windows for Visual Studio two significant speedups are to disable antivirus and NTFS last access time.

So I'm aiming at something else than: hardware upgrades, project structure modifications or configuring distributed builds.

Update #1 - maybe limiting the number of cc1plus processes could help speeding up. I think there is an environment variable that can be used for this but I wasn't able to relocate this info.

A: 

Take a look at Activity Monitor and see if any other processes are taking CPU time (e.g. Spotlight or Time Machine). Also look at the System Memory tab in Activity Monitor to see whether you're paging.

Paul R
"Spinning wait cursor" appears from time to time. Lookng at system monitor I observe that most of the cpu time is used by ~5 cc1plus processes (machine has 4 cores/4GB RAM). Still the CPU usage is not so high but now Xcode is marked as "not responding".
Sorin Sbarnea
Oops, now I see 9 cc1plus processes - this should not happen with 4 cores.
Sorin Sbarnea
A: 

I recall seeing someone recently whose Xcode speed issues were resolved by reinstalling Xcode.

If you do this, you might want to save your documentation downloads and restore them after reinstalling. It will save you from a long download. You can find the documentation files by going to Preferences / Documentation. Click the little "i" next to a Doc Set and then choose "reveal in finder" from the small window.

dodgio
+5  A: 

I think I may got Xcode to build at decent speed with this command:

defaults write com.apple.Xcode PBXNumberOfParallelBuildSubtasks 4

This will limit the number of processes executed when it does build. Before adding this to my machine (4 cores/3GB RAM) the build process was slower than on single core!

I think that XCode is not able to estimate the right limit of subtasks by itself because it does the estimate by looking only at your number of cores and ignoring the amount of RAM you have.

Sorin Sbarnea