« MacBook Pro: First Impressions | Main | Two Cores, Less Waiting »

MacBook Pro: Updated build timings

In a previous post, I provided some build timings that showed the MacBook Pro wiping the floor with my PowerBook G4 and holding its own against beefier hardware, including a loaded Power Mac G5. My RAM upgrade arrived (a 1GB SODIMM, bringing the total installed memory to 1.5GB), and it makes a big difference in the overall usability of the MacBook Pro — at least for my needs.

I have added times for the MacBook Pro with its upgraded RAM configuration, as well as timings for an Intel iMac (also a 1.83GHz Core Duo with 1.5GB of memory), and the use of the office build farm(*) for the Power Mac G5, and a "build farm" consisting of the Intel iMac for testing distributed builds with the MacBook Pro.

Here are the results of a "time xcodebuild clean build -target BBEdit -configuration Release":

PowerBook G4 1.67, 2GB, local build 46:28
MacBook Pro 1.83, 512M, local build 23:35
Power Mac G5 dual 2.0, 2GB, local build 21:29
Power Mac G5 dual 2.0, 2GB, distributed build 17:36
MacBook Pro 1.83, 1.5GB, local build 15:26
Intel iMac 1.83, 1.5GB, local build 14:36
MacBook Pro 1.83, 1.5GB, distributed build 12:21

(*) In this case, "build farm" refers not to a rack of machines purpose-built for compiling, which I know some shops use; rather, these are desktop machines put to various uses in the office, and Xcode makes use of them if they're available: engineering workstations, office computers, etc. Clearly, distributed builds are a win if you've got the horsepower otherwise sitting idle, but on a cost-to-benefit basis I wouldn't recommend that you run out and buy machines to make a build farm.

Regardless, the Intel machines remain impressively fast in comparison, and as I said the other day, this has me looking forward to the Intel "pro" desktop iron.


How many other Intel Macs do you have to distribute to?

AFAIK, XCode on Intel will only distribute builds to other Intel machines, and XCode on PPC will only distribute to PPC machines.

Nevermind, i skimmed past that passage.

Does the same issue apply to the MacBook Pro as it does to the Mini? Namely that matched DIMM's provide a better memory fetch cycle, hence better performance.

If so, there may be even more to come ...

Out of random curiosity, Rich, can you give the world a hint how many lines of code are in BBEdit?

We did a few build timing on our (smaller) project with a few MacBook Pros this week. What we learned was that hard drive speed matters and performance seems to scale pretty well with processor speed.

A 5400 RPM drive on a 2.0 GHz MBP took 2:50, whereas the 7200 RPM drive took about 2:30. My 2.16 GHz 'Book with its 7200 RPM drive took 2:18. (All computers had 2 GB of memory, FWIW.)

For comparison, a Quad 2.5 G5 actually took 2:20 to build (though that was compiling PowerPC code, not Intel).

Anyway, I'm thinking that if your MacBook had a 7200 RPM drive (I'm assuming it doesn't), it probably would have been pretty close to your iMac's time.

For comparison, a Quad 2.5 G5 actually took 2:20 to build (though that was compiling PowerPC code, not Intel).

That's interesting, but wouldn't true(r) comparison require compiling universal binaries on both platforms, rather than whichever is native to each?

Where would you recommend buying the RAM? None of my local computer stores sell DDR2-667 SO-DIMMs...

Matt: I buy nearly all of my RAM from Crucial Technologies. A friend recommended them many years ago, and I've had uniformly good luck buying RAM from them. It's a little more expensive than the bargain basement, but I'm willing to pay the premium for the reliability and the quality of service I've gotten from them.

Another good source is Data Memory Systems (DMS). They have excellent prices on RAM, and aside from parts for the latest machines, they also have RAM for harder-to-find systems (like printers and older Mac models) at very reasonable prices. Plus, they're in New Hampshire, so I get a warm fuzzy feeling from helping to support the regional economy in my own small way. :-)

The best memory for the price I have found is Ramjet (www.ramjet.com). I have been buying my upgrades from them for 4 years now. Always the best price (they offer the 1GB SODIMM for the MacBook at $139 versus $199 from Crucial) and they offer a complete guarrantee (though I've yet to need it).

Yes, a universal build would be a more fair comparison (and I was going to mention that, but my post was already getting fairly long). Unfortunately, I'm currently not in a position to run that test. Still, when I'm programming, the time of the debug/native-architecture build is actually the one that matters.

I recommend Dane-Elec memory, it's the same as a macbook's original Samsung memory but cheaper than Kingston or Crucial.

Works perfectly, be sure to order MacBook memory, though!


Interesting results.

Once question not answered (by anyone I've found on the net yet) is how does the Core Solo compare to the Core Duo in Xcode build times. This is an important question for those of us (with no money!) who use a Mini as a development machine.

One way to simulate this would, ignoring hard drive differences, of course, be to turn off one CPU with CHUD tool and re-run the benchmark.

Any chance of providding those numbers for one of your platforms running with a single CPU?