I plan on purchasing a Mac Pro as soon as they are available. Here are the specs I am looking at: - 8 Core 2.4Ghz - 12 GB of RAM - 1TB HDD for OS (later being replaced with Intel G3 SSD) - 1TB External for Time Machine - 2TB Internal for Media - ATI 5870 I need the expandability of the Mac Pro (triple monitors, future USB 3.0, multiple HDD's etc). I think this machine will be more than powerful enough for a software developer (I make iPhone apps). Does anyone know if Xcode can utilize all available cores? I want to be sure that I can max out this machine when working in Xcode. I found this website, http://macperformanceguide.com/Optimizing-Grades.html but its over 1.5 years old, so Im not sure if it applies currently. Also, the website only has a first gen MP (total 4 cores) and they say that performance increases linearly with more cores. If that IS true, then I would have 8 physical and 8 "virtual" (yes, I know the term is incorrect) cores, giving me a total of "16". Would Xcode be able to use all of these? Also, here are some of the other programs I use, ALL at the same time. Would I be better off getting the quad/hex? I want the 8 because it seems like the best "value" when compared to other dual processor options. Also, it has twice the RAM slots. Illustrator CS5, Interface Builder, Evernote, iChat, Adium, Skype, Tweetie, Safari w/ 10 tabs, Mail, iCal, iTunes, Textedit, Audacity, lots of Finder windows, iPhoto, MajicRank, Appviz, Quicktime and obviously Xcode. I usually run them all at the same time (I currently max out the 8GB on my MBP). So what makes the most sense? 4/6/8? Money is not a significant factor (although I don't have a 5K budget). Can someone please share their insight on this? Im sure there are others around here that are also software devs! Thanks for reading my long post!
XCode can compile one class file per core. So if you have 8 cores, you can compile 8 classes at once, with class dependencies possibly changing that, of course. If you have more than one machine you can turn on network compiling which will let you add the cores of other machines.