Thoughts on the Mac Book Pro - interjecting a bit of reality
My current workhorse machine is a 17" 1.33 ghz PowerBook G4 - it's over 2 years old now. I like it rather a lot. Except that it's kinda slow.
Apple has announced a sexy new intel dual-core PowerBo
MacBook Pro. I don't think I like the new name - they've been powerbooks for a long time, but of course, there's no PowerPC in it anymore, so the power part of the name had to go. So, I'm wondering if it's time to replace the G4 with the sexy new machine. Or, alternatively, get a dual-core G5 box for work, and use my iPod for moving files around. But the G5 is seeming kind of like a dead-end road, and I really really like portability.
But still, the Mac Book Pro isn't perfect.
There are two obvious issues:
1. It won't run windows yet, because it doesn't use a BIOS. It uses intel's new EFI firmware, which up until now has mainly graced itanium machines, and Windows XP won't boot on an EFI-based machine. Windows Vista might, but that's not here yet. This obviously isn't a deal-killer - if I wanted to run Windows, there are lots of choices of hardware to do that. I want to run OS/X, but I want to be able to occasionally drop into windows to run important apps that tend not to come out on OS/X first...
2. This is a new hardware platform, and this is the first machine to utilize it. This may be less risky than usual, given that (a) Mac OS/X has been running on intel since, oh, 1992, if you count the NeXTStep heritage, and (b) it's not like building intel-based laptops is a black art these days.
There are also some concerns in deciding really how much better the new box is.
First - Apple says that the new machine is 4x faster than the 1.66 ghz powerbook. I'll also include the SPECint_rate2000 numbers that I found for the 2.5ghz dual-core G5 (one dual-core chip, not two of them as in the Quad G5 box)
| 1.67ghz G4 | Dual-core 2.5ghz G5 | 1.83 Intel Core Duo | Dell 3.2Ghz Pentium D dual-core |
SPECint_rate2000 | 6.7 | 32.3 | 30.3 | 31.3 |
But SPECint_RATE measures throughput, and is generally used to measure multiprocessor performance - so it takes both cores into account. The 1.67ghz G4 powerbook only has one core, and most users, running end-user things like NeoOffice, Create, or OmniOutliner, aren't running multithreaded apps and aren't going to see much of a boost. Then again, they might - one core for the app, one core for the windowserver?
The second concern is the lack of a firewire 800 port. The Mac Book Pro has a single FW-400 port, but no FW-800. I've got FW-800 now on my G4 powerbook, and I do in fact use it. I've got a LaCie Bigger Disk Extreme, which has a FW-800 port. I decided to run some metrics to see if it really is that much faster than FW-400.
Turns out that it is.
Here's the time it took to create 4 512mb files:
Desc | time | average |
Internal disk | 01:51.80 | only ran once |
FW800 run 1 | 00:32.18 | |
FW800 run 2 | 00:32.11 | |
FW800 run 3 | 00:32.08 | 00:32.12 |
FW400 run 1 | 00:53.78 | |
FW400 run 2 | 00:53.56 | |
FW400 run 3 | 00:53.87 | 00:53.74 |
(Note that my internal disk is a 4200 80gb unit).
Looks like FW800 is in fact nearly double the speed of FW400.
If you're interested, here's the code - this is intended to actually measure how fast the machine can pump data down the firewire interface, with as little other IO going on as possible. Prior to running this, I ran mdutil -i off to turn off Spotlight indexing of the hard drive. As an aside, it felt really good to dust off my ObjC chops.
#import <Foundation/Foundation.h>
const int ONE_HALF_GIG = 512*1024*1024;
const int NUM_FILES = 4;
int main (int argc, const char * argv[]) {
NSAutoreleasePool * pool = [[NSAutoreleasePool alloc] init];
NSMutableData *contents = [NSMutableData dataWithCapacity:ONE_HALF_GIG];
unsigned int i;
if (argc != 2)
{
NSLog(@"Need to specify a pathname as the sole argument.\n");
}
else
{
for (i = 0; i < (ONE_HALF_GIG/(sizeof(int)))-1; i++)
{
[contents appendBytes:&i length:(sizeof(int))];
}
NSLog(@"Writing files\n");
for (i = 0; i < NUM_FILES; i++)
{
NSString *path = [[NSMutableString alloc]
initWithFormat:@"%s-%u.dat", argv[1], i];
[[NSFileManager defaultManager]
createFileAtPath:path contents:contents attributes:nil];
}
NSLog(@"Done writing files\n");
}
[pool release];
return 0;
}
So, I suppose this is in support of the conclusion I had before I started this - it's silly to buy the Rev A version of the new laptop anyway; let's see what comes with the Rev B machines, and whether or not apple does a 17" version of the intel Mac Book Pro in the next few months. My G4 is still under warranty, and it's not deathly slow yet. I can afford to wait a bit.
Update:
Seems I'm not the only one who has reservations. Unsanity.org goes into more detail, and Paul Thurrott's Internet Nexus has an interesting comparison between the mac book pro and the current powerbook g4 offering.