Original Link: https://www.anandtech.com/show/1936
Apple Makes the Switch: iMac G5 vs. iMac Core Duo
by Anand Lal Shimpi on January 30, 2006 11:26 PM EST- Posted in
- Mac
It seemed so far away when, in June last year, Apple announced their two-year transition to Intel architectures; it also didn't exactly add up. At their World Wide Developer Conference, Apple let the world know that every version of Mac OS X since 10.0 has been compiled and running on x86 hardware, so the OS was ready. Apple's iLife and iWork suites are a great supporting cast to the OS, and those applications were either ready or very close to being ready. Yet, Apple was telling everyone that they would start the transition by June of 2006 and be done with it a year later.
Everything started to make sense once Intel's Core Duo launch was scheduled for the beginning of the new year. It was this chip with which Apple would launch, and why not, as it has a guaranteed migration path over the next year. Core Duo platforms will eventually be able to be migrated to Merom based offerings (the two chips are pin-compatible) and using Core Duo on the desktop can tide users over until Conroe arrives if necessary. This way, Apple doesn't have to worry about switching to the Pentium 4 and its high clock speeds and then over to Conroe with its lower clock speeds, explaining why one is superior to the other each step of the way. Apple gets a quick and easy migration to an architecture that today offers similar clock speeds to their G5 processors (at least at the low end and mid-range), and they get to boost clock speed and performance later this year with Conroe and Merom.
When Apple announced at this year's Macworld San Francisco that they were ahead of schedule with the move, it was most likely more of a nice spin to put on things than truly being ahead of schedule. The MacBook Pro and the Intel based iMac both rely on Apple's existing product designs, and the software has been ready for months now. Third party support is lacking, and Apple's Pro applications have yet to be ported over, but if anything, it wasn't that Apple was ahead of schedule, they were simply waiting on Intel. It's probably better etiquette to say that you are ahead of schedule rather than saying that you are waiting on your brand new, larger-than-life CPU partner to deliver their goods though, isn't it?
Now that Intel's Core Duo has finally been launched, Apple could go ahead with their PowerPC to x86 transition, but there's another problem. A very smart man at Intel once told me that you should never launch a new microarchitecture alongside a new manufacturing process. With so many variables, things are bound to go wrong, making delays inevitable. With the Core Duo, Intel not only introduced a reasonably sized change in microarchitecture, they also made the shift to 65nm on this semi-new architecture. The end result seems to be that availability of Core Duo processors and chipsets just isn't all that great. In fact, unless you are a Tier 1 OEM or ODM, we're hearing that you aren't getting Core Duo chips until sometime next quarter! That's getting dangerously close to the launch of Conroe and Merom, making Core Duo seem very much like a temporary solution.
With limited supplies, all of Intel's partners were limited in what they could bring to market based on Core Duo, and when. That's why one of Intel's strongest partners, Dell, made their first Core Duo product a higher priced 17" model that would sell in lower quantities than a lower priced mainstream solution. And it's also a big reason why Apple's first Intel based products are what they are, and why we are also not finding the Core Duo in a revamped $400 Mac mini today.
Curiously enough, Apple was able to secure large enough quantities of Core Duo to stick in their iMacs before any PC vendor was shipping them in a notebook. So, Apple's quantities are really small enough that they could operate well within Intel's capacity at this point, or Intel gave them some preferential treatment - potentially as a house warming gift to commemorate the new relationship.
Then there's the issue of third party software support; the problem is that in the grand scheme of things, Apple is still small fish in the computer industry, and thus, their partners like Adobe and Microsoft are still not ready with their Universal Binaries; although, the transition was announced over six months ago. So, today's Intel based Macs have to rely on slow binary translation for full software compatibility. The other problem is that even smaller partners like Aspyr aren't quite ready yet either, so we can't really answer questions like whether or not the port to PowerPC was the reason that Doom 3 was so slow on OS X yet.
While it's easy to argue that Apple had always planned to have Intel based Macs out as soon as Intel launched Core Duo, it's really tough to say that the transition is ahead of schedule if major software support isn't there (even some of Apple's own applications won't get support until March). These first-generation Intel-based Macs are more like public beta tests rather than final platforms; while the hardware may be complete, as you will soon see, relying on binary translation to run any non-Universal applications isn't the most pleasant thing in the world. However, Apple isn't forcing the new platforms on their customers, as you still have the choice to purchase the PowerPC G4/G5 based systems at the same price if you desire.
The new Intel based Macs are selling though, despite the early stage of the transition. And they are selling to whom you would expect: the early adopters, the Mac enthusiasts, those who need a computer today and won't upgrade for a very long time...oh, and of course, some may find their way into my hands.
The new iMac
Although my wife has been using one for a while, I realized that I have never actually given my impressions of Apple's iMac platform, despite having looked at both their desktop and notebook offerings in my initial wave of Mac articles.
The iMac is an interesting option for the desktop user, as it is very much a "lifestyle" computer, but a very functional and capable one at that. The iMac is the epitome of what today's PC makers simply do not create - and that is a modern, stylish take on the desktop computer.
It has been done many times in the past. You combine a monitor with a computer and sell it as one. It was done so frequently and so poorly in the past on PCs that there is now a stigma associated with it, but let's think about that for a moment; some of the worst all-in-one designs came about well before LCD panels became mainstream, not to mention that user upgradability was a much bigger deal back then than it is today. With the advent of the LCD panel, you can actually have some pretty stylish integrated systems, if you design them properly, that is. And the issue of upgradability is far less of a demand today than it was back then for a number of reasons: the rate at which CPUs are released has slowed down tremendously, external storage is extremely easy to add, and if you aren't a gamer, then a good GPU today will last you years to come. The point is that these integrated designs were mostly terrible in the past, but that doesn't mean that they have to be today.
When Apple released the Mac mini, I looked at it and thought that they had struck gold; they basically took a notebook platform, massaged the shape, and stuck it in a wonderful form factor for the casual desktop user. In the process, you lose the ease of internal access that larger form factors would offer, but the end result is very close to the perfect form factor for casual users. With the iMac, Apple has pretty much done the same thing; they've taken a notebook motherboard and processor, although this time combined it with a 3.5" desktop hard drive, and mounted it behind a LCD panel - creating a very elegant desktop computer.
The trick to the iMac is in its form factor - although the design is a little bottom heavy, the iMac doesn't look all that much different than your standard LCD monitor. The very positive side effect of the iMac's integrated design is that when paired with a Bluetooth keyboard and mouse, you only have a single cable coming out of the system for power and that's all. The iMac has made it OK for a computer to be on top of your desk again, with as little as one cable coming out of the system - the days of a wiring nest collecting dust behind your computer are over. Granted, this machine isn't for everyone, and I definitely couldn't use it as my only computer simply because I would need a higher resolution panel attached to it, but as a second or third computer, or a computer for someone who just wants the basics (Web browsing, email, documents, music, photos, movies, etc.), the iMac does suffice.
The new iMacs have become very thin; the 17" models that I received were a little under 1.5" at their thinnest point, which happens to be around the outside of the unit. That's thinner than some notebooks! The styling of the systems is nice, but as I mentioned before, they are a little bottom heavy - meaning the lower 4" of the system looks a bit odd and out of place.
The low end models come with a 17" widescreen 1440 x 900 display, while the other option is a 20" widescreen and its 1680 x 1050 panel. Personally, I found the 17" model to be a good size; however, the screen resolution was a little low for me. It's the resolution alone, not any of the upgraded specs, that would force me to pick the 20" model instead. For the casual user, however, the 17" should do just fine, especially keeping in mind that OS X tends to do a lot better at lower resolutions than Windows in terms of being able to manage and access Windows efficiently.
All of the ports are on the back of the system.
Apple has done the bare minimum and outfitted these two systems with 512MB of memory. I mention that 512MB is the bare minimum because it honestly is for OS X, but I will mention that one of the first upgrades that I would perform on these machines is to bring them up to 1GB of memory. With only 512MB, there were a number of cases during my normal use of the machines (which, in this instance, didn't include any heavy multitasking) where I found them swapping to disk. Just browsing the web or checking email didn't trigger it, but it was once I started to really use any of the iLife '06 or iWork '06 applications that 512MB quickly became a burden.
Upgrading the memory on the iMac is about the only thing that you can do, as replacing the hard drive requires a complete disassembly of the machine (which isn't something that Apple wants end users to do - they would like you to bring it into their stores for those sorts of upgrades). Thankfully, upgrading the memory on the machine is fairly easy. Along the bottom of the machine, there are two screws that you can remove with a small screwdriver. Removing these screws releases a panel that covers either one or two slots for memory, depending on which iMac you own.
The iMac G5 has a single 240-pin DDR2 slot that is empty and can be used for upgrades, and the standard 512MB is located on the motherboard itself. The Intel based iMac uses 200-pin DDR2 SO-DIMMs (notebook memory), and you can access its two slots at the bottom of the unit. The system ships with a single SO-DIMM installed, leaving one slot free to be populated.
The 200-pin DDR2 SO-DIMM in the Intel based iMac.
iSight and Front Row, Standard
The other major change with this generation of iMac is the integrated iSight camera and mic, located in the top side of the monitor bezel. I was actually very impressed by the image quality of the integrated 640 x 480 camera. Also to make sure that you don't get caught off guard, a green LED lights up when the camera is actually active and recording.
The iSight Camera
Apple's IR remote will magnetically mount to the lower right of the iMac.
The main screen of Front Row
The Videos sub-menu
Movie Trailers available in Front Row
I was also fairly impressed with how quickly you were able to skip ahead in a trailer; rewinding and fast forwarding was quite seamless, almost CE-like, although it still had a slight lag to it which reminded you that you were still doing all of this on a computer.
The rest of the menus in Front Row were also just a little on the slow slide for me, definitely lacking the snappiness of Media Center Edition's UI. Despite the slowness, like the rest of the OS X interface, Front Row was very pleasant to use.
One thing that actually surprised me was how usable the interface was, even on a 17" screen from 6 or 7 feet away. The size of the icons and menu items made the experience quite pleasant, although if you get too far away you are going to need a bigger screen. The new iMacs do offer DVI/VGA/S-Video/Composite output, however you'll need an external dongle that isn't supplied with the system in order for that to work.
At the end of the day, I will say that Front Row did impress me a lot more than I expected it to. There are countless occaisions where I'm showing something on my computer to my wife, my family or friends, and it'd be a lot easier to do it, especially when there are a lot of people, from several feet away and with a remote - Front Row accomplishes just that. There is no doubt that Apple will eventually have to look at doing something a little more Media Center-like, but it'll take a lot more than Front Row for that to happen. My guess would be that it would make a lot of sense for Apple to enter the Media Center market around the time that ATI begins shipping their OCUR device.
The Intel iMac
As I mentioned earlier, since the Intel transition is nowhere near complete, Apple now offers two iMac choices for their customers at the same price point: the iMac G5 and the Intel based platform, simply called the iMac. Although it is slightly newer, the Intel based iMac uses the exact same externals and mostly the same hardware as the revamped iMac G5. The only differences really are on the motherboard itself.
Two identical iMacs, two different processors
In fact, the iMac in general is extremely quiet, regardless of whether you have a PowerPC or Intel based model. Both iMacs were virtually silent during operation, although for whatever reason, the iMac G5's fan would sometimes spin at full speed upon startup. I never once heard the iMac Core Duo's fan spin up, not even during my CPU intensive H.264 encoding tests.
The 17" iMac comes with a 1.83GHz Core Duo processor, while the 20" ships with a 2.0GHz processor (compared to 1.9GHz and 2.1GHz in the G5 versions). Both of these are your standard voltage Core Duo chips, which means that Apple could theoretically offer a smaller form factor desktop with a Low Voltage or Ultra Low Voltage Core Duo/Core Solo in the future. It's also worth noting that the fastest Core Duo out right now runs at 2.16GHz, so Apple could either upgrade their 20" model or offer an even larger, higher end model in the future. The Core Duo processor is expected to top out at 2.33GHz towards the end of Q2.
The only other difference between the iMac and the iMac G5 is the choice of GPU, with the iMac offering the newer ATI Radeon X1600 while the iMac G5 ships with the older Radeon X600 Pro. They are both PCI Express GPUs, and although I don't go into much detail about the impact of PCI Express on OS X in this article, it is something that I may look into in the future.
The iMac and the iMac G5 are the first Macs I've used that ship with Apple's Mighty Mouse by default. It is a pleasant change from Apple's older optical mice. Despite it not being my favorite mouse, it is still a huge improvement over what used to come with these things.
Intel Macs use More Memory
One thing I encountered when running some of the benchmarks for this article was that the Intel based iMac used more memory than the PowerPC based iMac G5. Each application ends up taking up another 1 or 2MB on average on the Intel side, but it does add up.
For example, just after boot while sitting at the desktop, there was a difference of 15MB between how much memory the iMac G5 and the Intel based iMac had in use. If you do end up with an Intel Nac, it is yet another reason to opt for more memory than the default 512MB.
Memory Usage on the iMac G5 - 336.39MB Free
Memory Usage on the Intel based iMac - 314.57MB Free
Core Duo vs. G5
At the heart of today's comparison are two processors, Intel's Core Duo and IBM's PowerPC 970FX, otherwise known as the G5.
Johan did a great job of classifying the G5 as virtually the best of both worlds, a very wide superscalar CPU that is also very deeply pipelined. While these characteristics give the G5 a fairly competitive performance profile, they also make it quite power hungry (particularly the pipeline depth). But thanks to still being stuck with a small 512KB L2 cache, the G5 only weighs in at a meager 58 million transistors with the 90nm die taking up 66 mm2.
The Core Duo, on the other hand, is composed of 151.6 million transistors, 2.6x the number of transistors in the G5. But because it was built on Intel's 65nm process, the die size is still quite reasonable at 90.24 mm2. Most importantly, the Core Duo is based on a very power optimized mobile architecture, so it should have the power consumption advantage as well.
We have been longing to compare the G5 to x86 processors for a while now, but we've always run into the problem of achieving equal platforms. Thankfully, Apple has two iMacs, one based on the Core Duo and one based on the G5, that are virtually identical, thus facilitating our comparison.
From the end-user's standpoint, it's virtually impossible to tell the G5 from the Core Duo iMac. If you look at the right preference panels or open up the system profiler, it is obvious; but from normal application usage and interaction, the transition is truly seamless (which is very impressive considering that they completely changed CPU architectures).
Obviously, the Core Duo is a dual core processor, while the G5 in the iMac is a single core, so there are inherent performance advantages in that. But one thing that surprised me was the fact that the move from a single to dual core system under OS X wasn't nearly as earth shattering of an experience as it is under Windows. The problem under Windows is that there are so many cases where you run into poor scheduling, which results in a serious reduction in performance on a single core processor, meaning that the move to dual core is quite tangible. But for whatever reason, it's a lot more difficult to tell on the iMacs.
It could be that the OS X scheduler just does a better job, or it could be that the 512MB of memory on these machines was enough of a bottleneck that I couldn't really gauge the improvement in responsiveness, thanks to a dual core machine. My best guess is that it is a combination of both. It's not that you don't notice a benefit when moving to dual core. Rather, it's just that the difference in responsiveness isn't as great as what I was expecting. One other potential reason is that the OS X interface in general isn't particularly responsive, so it may just be that the dual core effect is dulled, thanks to a slower UI (slower compared to Windows that is).
The other thing worth pointing out is that the Core Duo based iMac offers no settings for CPU power consumption. On the iMac G5, you can set processor performance to Automatic, Highest or Reduced, giving the user the option of choosing the balance between power consumption and CPU performance. On the Core Duo based iMac, no such setting exists, presumably because the CPU seems to manage the balance very well on its own. In theory, the G5's Automatic setting should be the same, behaving a lot like Cool'n'Quiet on an AMD system (or EIST on an Intel system). It should barely impact performance by fulfilling CPU demand when necessary and really kicking in during idle or low use periods; the problem is that this isn't always the case.
For the majority of performance tests that I conducted on the iMacs, leaving the G5 set to Automatic actually gave me performance within about 3% of the system's performance if I set the energy saver setting to Highest. However, there were some benchmarks where the iMac incorrectly would not increase CPU frequency in order to accommodate a very high demand task. The best example that I could find was my Quicktime Pro 7 H.264 encoding test (the same test that I actually use in Windows for my CPU reviews). With the G5 running in Automatic mode, the test took over 25 minutes to complete, compared to 9.8 minutes for the Core Duo. Setting the processor performance to Highest, the G5's time dropped down to a more respectable 12.3 minutes, a reduction of more than 50%! The goal of the Automatic processor performance setting should be to crank up CPU frequency when it's needed, and scale it back when it's not. The results that I saw in my Quicktime test show that it fails at that goal in a major way, which isn't acceptable. There were a few other isolated cases where the same was true, forcing me to leave the iMac G5 in its Highest performance state for all of my performance tests.
IBM vs. Intel - Performance per Watt
At Steve Jobs' WWDC 2005 Keynote, he presented this slide to the curious crowd:
The idea was that IBM couldn't deliver the performance per watt that Intel could over the coming years, and that was one of the primary reasons for the transition away from the PowerPC architecture.
While we can't test future IBM and Intel CPUs, we can definitely compare power consumption and performance per watt today and find out if Intel can at least start delivering on Apple's claims.
I started out by looking at power consumption of the iMac systems as a whole, measured at the power outlet in Watts. The systems are configured as close to identical as possible; although the Core Duo iMac has a slight advantage in its 90nm X1600 GPU compared to the iMac G5's 0.13-micron X600 GPU, I didn't focus on any GPU intensive tests so the difference should be minimized. There are obvious memory differences as well. While both systems have 512MB of memory, the Intel system uses DDR2-667 and the G5 system uses DDR2-533. Then there are the CPU and chipset differences, but those are the ones that we want to measure anyways, so they have to be there.
The first comparison is system power consumption at idle. This is with both identically configured systems being freshly booted and sitting on the desktop with no disk accesses or anything. Note that the systems weren't left alone long enough for the hard drive to spin down yet:
The Intel based iMac consumes about 2/3 of the power of the iMac G5 - impressive and pretty much expected given what we've seen of the Core Duo in the past. The G5 is a solid competitor here, but the Core Duo is in a completely different league of power consumption.
Under load, the difference in power consumption is just as pronounced - with the iMac G5 coming in at 96W while the Intel based iMac is at 62W. Once again, we are looking at approximately 2/3 the system level power consumption from the Intel based iMac.
I also looked at power consumption during my H.264 encode test, which produced results similar to the iTunes encoding test above:
The iMac Core Solo 1.83GHz was simulated by disabling one of the Core Duo's cores
But now let's look at performance per watt and see where we stand today. I took the Quicktime H.264 encode time and converted it into frames encoded per second, then divided that by the peak power consumption values for the entire system. Note that during the Quicktime and iTunes encoding tests, the peak power consumption value and the average power consumption of the system are basically identical, since the CPU remains at close to 100% utilization for the entire duration of the test.
The end result is this graph of Frames per Second/Watt:
The iMac Core Solo 1.83GHz was simulated by disabling one of the Core Duo's cores
We are only talking about system power usage here, so if we were to truly isolate just the CPU power, the difference should be even larger, assuming that the rest of the systems consume a relatively equal amount of power in both configurations. You should also keep in mind that the Quicktime encode test is actually one of the Core Duo's weakest tests, so the actual performance per watt advantage may be even higher in tests where the Core Duo has a larger performance advantage over the G5. This is just a good test to show power consumption, since it is fairly CPU bound and consistent in its CPU load.
Architecture and Memory Performance
When Johan did his No More Mysteries article, he found that as a processor, the G5 is quite competitive with modern day x86 CPUs. In fact, he found that it offered floating point performance on par with that of the fastest x86 processor - the Athlon 64/Opteron.
Separately, I looked at Core Duo performance and found that clock-for-clock, it was a pretty solid competitor to AMD's offerings. Intel had effectively created a performance equal to AMD's Athlon 64 at lower clock speeds, without the use of an on-die memory controller.
But now, it's time for judgment day. How does the Core Duo stack up to the G5? Let's start at one of the G5's weakest points - memory speed.
I turned to lmbench and compiled it for both G5 and Intel x86 architectures, and used it to give me some hints to how memory speed has changed with the new platform.
I organized the data in terms of distance from the CPU. So first, we have performance of the on-die L2 cache of these two chips. The Core Duo's L2 cache took 7.649ns to access, which translates into 14 clock cycles, a number that agrees with my ScienceMark results from previous articles.
The G5's L2 cache took 6.329ns to access, which at 1.9GHz, translates into a 12 cycle L2 - a slight performance advantage over the Core Duo. Remember that the Core Duo's predecessor originally had a 10 cycle L2 cache, but thanks to the new power saving technology and some other unmentionable (for now) changes to the cache, Core Duo's L2 now takes 14 cycles to access. Despite the greater access time, it's important to note that Core Duo's L2 cache is four times as large as the G5's.
The 1.83GHz Core Duo features a 64-bit wide 667MHz FSB, offering a similar 5.336GB/s of bandwidth. The FSB connects the chip to a 945 Express MCH with a dual channel DDR2-667 memory controller, providing it with 10.6GB/s of memory bandwidth. However, the Intel based iMac only ships with a single SO-DIMM installed, meaning that it is only operating in single-channel mode - delivering 5.336GB/s of memory bandwidth. I didn't have a DDR2 SO-DIMM on hand to test whether or not installing a second one would actually enable dual channel mode.
The 1.9GHz G5 features a bi-directional 64-bit wide 633MHz FSB, offering a total of 5.06GB/s of bandwidth. The chip connects to a North Bridge that appears to have a dual channel DDR2-533 memory controller, which provides it with 4.264GB/s of memory bandwidth, thanks to only one channel being active. This means that the iMac G5 is slightly memory bandwidth starved.
In Johan's article, he uncovered that the G5 is in terrible need of a lower latency memory controller, with memory requests taking almost twice as long as on an Intel platform! Whether it is the G5's FSB or its chipset's memory controller that is at fault is difficult to isolate, but needless to say, the comparison to the Core Duo isn't pretty:
It takes the G5 almost twice as long just to get data back from memory as the Core Duo. That means that the CPU has to waste around twice as many clock cycles as the Core Duo, which leads to higher power consumption and lower performance. To make matters worse, the G5 only has a 512KB L2 cache, so it has to go to main memory more often than the Core Duo with its massive 2MB L2 cache. While sticking with a 512KB L2 cache may have kept the CPU small, the G5 really needed a larger cache much earlier in its lifetime (either that or a better FSB/memory controller).
The high latency memory access and slower memory bus is why the G5 suffers tremendously when it comes to memory bandwidth:
Next up, we'll look at floating point performance.
Flops, programmed by Al Aburto, is a very floating-point intensive benchmark. Analyses show that this benchmark contains:Note that some of those 70% FP instructions are also memory instructions. Benchmarking with Flops is not real world, but isolates the FPU power.
70% floating point instructions;
only 4% branches; and
Only 34% of instructions are memory instructions.
Al Aburto, about Flops:
" Flops.c is a 'C' program which attempts to estimate your systems floating-point 'MFLOPS' rating for the FADD, FSUB, FMUL, and FDIV operations based on specific 'instruction mixes' (see table below). The program provides an estimate of PEAK MFLOPS performance by making maximal use of register variables with minimal interaction with main memory. The execution loops are all small so that they will fit in any cache."Flops shows the maximum double precision power that the core has, by making sure that the program fits in the L1-cache. Flops consists of 8 tests, and each test has a different, but well known instruction mix. The most frequently used instructions are FADD (addition), FSUB (subtraction) and FMUL (multiplication).
MOD | FADD | FSUB | FMUL | FDIV | iMac G5 1.9GHz |
iMac Core Duo 1.83GHz |
1 | 50% | 0% | 43% | 7% | 705 | 876 |
2 | 43% | 29% | 14% | 14% | 490 | 366 |
3 | 35% | 12% | 53% | 0% | 2213 | 1216 |
4 | 47% | 0% | 53% | 0% | 1349 | 1178 |
5 | 45% | 0% | 52% | 3% | 868 | 1109 |
6 | 45% | 0% | 55% | 0% | 1509 | 1291 |
7 | 25% | 25% | 25% | 25% | 341 | 235 |
8 | 43% | 0% | 57% | 0% | 1440 | 1264 |
Average: | 1114 | 942 |
One of the G5's strengths is in its floating point performance, and here, we see an example of that as it holds a 18% performance advantage over the Core Duo. This does complicate the performance scene, as the move to Core Duo isn't necessarily going to be a clean victory for Apple today.
The last architectural performance test was the Queens benchmark, which does a great job of measuring the performance of a CPU's branch predictor.
To test the branch prediction, we used the benchmark "Queens". Queens is a very well known problem where you have to place n chess Queens on an n x n board. The catch is that no single Queen must be able to attack the other. The exhaustive search strategy for finding a solution to placing the Queens on a chess board so that they don't attack each other is the algorithm behind this benchmark, and it contains some very branch intensive code.
Queens has about:
23% branches
45% memory instructions
No FP operations
On a PIII, the Branch misprediction rate is up to 19%! (Typical: 9%) Queens runs perfectly in the L1-cache.
As Johan mentioned in his article, it seemed as if a good branch predictor was very important to the chip's designers. The necessity for a good branch predictor is also evident when you look at how long it takes the G5 to access main memory. For this test, we looked at Queens performance with 16 queens on the chessboard:
The G5 completely dominates the Core Duo here. With a relatively short pipeline, not as much attention is usually paid to branch prediction as on a chip with a longer pipe.
Boot Time Performance
Although my personal experience is that I end up rebooting my Macs less frequently than my PCs (which themselves are hardly rebooted), boot time is still a frequently-asked-for statistic, so here it is. Measured five times and averaged, the boot time of the two machines in seconds (both were brand new, clean configurations with the same software installed and OS X configured before measuring):
The Core Duo iMac does boot significantly quicker than the G5, although neither one can be considered to be lightning quick. I'll get excited about boot times when they are in the single digits.
Media Encoding Performance with iTunes and Quicktime
The encoding tests here are identical to the ones that we run in our CPU tests, except obviously run under Mac OS X 10.4.4 instead of Windows XP. It's important to note that iTunes, Quicktime as well as the iLife and iWork suites are all Universal applications, meaning that they run natively on both PowerPC and x86 architectures. The performance comparisons on these next few pages is done without any binary translation.
The iMac G5 is pretty strong at floating point performance as we've already seen, so the fact that the Core Duo completed the 304MB encoding task in 3/4 of the time set off some alarms. The 1.9GHz iMac G5 is a single core, single processor machine, while the Core Duo based iMac has two cores running at 1.83GHz. The iTunes encoding test, like many operations in Mac OS X applications, is multithreaded, meaning that it takes advantage of multi-core or multi-processor systems. So the question we need to be asking is how much of this performance advantage is due to the Core Duo's dual cores?
Luckily, OS X's processor panel provides a quick and easy way to disable one of the cores in the Core Duo machine, so we have a way of finding out. With one core disabled, I added the non-existant iMac Core Solo 1.83GHz to the graph:
With an encoding time of 73 seconds, the Core Solo 1.83GHz is actually slower than the G5 1.9GHz. Intel doesn't win because of a faster single core. They win because they have two cores where Apple could previously only put one.
Let's take a look at Quicktime next; once again, this is the same test that's run in our CPU reviews. This time around, I've included the Core Solo from the start:
While the Core Duo wins the test, the Core Solo is actually slower than the single core G5. We can cut Intel a little slack here, as it seems that Quicktime isn't very well optimized for their processors and Apple is reportedly working on fixing that, but the point is that we have now seen two cases where the G5 doesn't lose because it's a slower chip. It loses because there is only one of them in the iMac.
iLife '06 Performance with iMovie HD
The next application that I looked at was iMovie HD, a part of the newly announced iLife '06. There are two primary focuses for performance in iMovie HD: video import speed (if you are dealing with a non-DV or non-iSight video source) and effect rendering speed. I focused on the latter, measuring the time that it takes to render various transitions and video effects in iMovie HD.
Note that all of the transitions and "Video FX" are single-threaded, so there was no performance difference on the iMac between running with two cores or one enabled.
First up are the transition rendering times. There are 15 transitions in iMovie HD that can be placed between two separate clips. I timed the amount of time that it took for the transition to be rendered upon inserting. Each transition was timed three times and the results were averaged - the average time is reported in the table below:
iMovie HD Transition Rendering Performance in Seconds (Lower is Better) | iMac G5 1.9GHz | iMac Core Duo 1.83GHz |
Billow | 5.36 | 4.14 |
Circle Closing | 3.32 | 3.13 |
Circle Opening | 3.41 | 3.09 |
Cross Dissolve | 3.51 | 3.34 |
Disintegrate | 6.14 | 4.73 |
Fade In | 2.31 | 2.32 |
Fade Out | 2.30 | 2.28 |
Overlap | 3.25 | 3.25 |
Push | 3.43 | 3.26 |
Radial | 3.35 | 3.29 |
Ripple | 6.74 | 5.32 |
Scale Down | 3.73 | 3.53 |
Warp Out | 3.58 | 3.91 |
Wash In | 2.43 | 2.47 |
Wash Out | 2.35 | 2.39 |
Total | 55.21 | 50.47 |
The Core Duo was slightly faster - the total for all of its transitions was about 8.5% lower than the iMac G5's time.
The bigger performance differences come when looking at the Video FX render times. These effects take anywhere from a few seconds, all the way up to multiple minutes to render, and can definitely bog down the creation of any movie project.
iMovie HD Video FX Rendering Performance in Seconds (Lower is Better) | iMac G5 1.9GHz | iMac Core Duo 1.83GHz |
Adjust Colors | 75.62 | 48.62 |
Aged Film | 30.43 | 32.44 |
Black & White | 52.62 | 35.81 |
Brightness & Contrast | 26.12 | 28.13 |
Earthquake | 113.69 | 56.75 |
Electricity | 78.47 | 54 |
Fairy Dust | 151.69 | 58.63 |
Fast/Slow/Reverse | 6.12 | 8.56 |
Flash | 24.44 | 24.16 |
Fog | 46.25 | 49.66 |
Ghost Trails | 80.97 | 76.31 |
Lens Flare | 61.12 | 46.22 |
Letterbox | 26.94 | 28.75 |
Mirror | 25.6 | 25.16 |
N-Square | 31.13 | 32.63 |
Rain | 45.6 | 39.75 |
Sharpen | 35.75 | 43.25 |
The sample above is almost all of the effects that you can perform in iMovie HD; the exception being all of the Quartz composer effects, which were left off in the interest of time. When the G5 and Core Duo are close, the G5 generally pulls ahead by a single digit percentage. However, when they aren't close, the Core Duo is usually ahead by at least 30%. If you average it all out, the performance advantage translates into about 11% in favor of the Core Duo. Once again, these tests are single-threaded, so there is no performance benefit due to the dual core nature of the Core Duo.
iLife '06 Performance with iPhoto, iDVD and iWeb
With iPhoto, Apple has really created an excellent digital photo album application that is extremely robust. Steve Jobs is always demonstrating how iPhoto can handle tens of thousands of pictures without a problem, but given that I am testing iMacs with 512MB of memory, I'll stick to our paltry 379 photos as the data for this next test.
The test is simple; I timed the import of all 379 photos into iPhoto which, believe it or not, is quite CPU intensive and not as I/O bound as you'd think. After I attained the time, I divided it into 379 to get the number of pictures imported per second. Like many operations in OS X, the iPhoto import process is multi-threaded, giving the Core Duo an inherent advantage over the G5. So, I've included Core Solo performance in the chart below as well:
Once again, we see absolutely staggering performance from the Intel based iMac, performing 51% faster than the iMac G5. But pulling the second core out of the picture shows us that a great deal of the performance advantage comes from the dual core nature of the chip, as the G5 can outperform the Core Solo at 1.83GHz by a healthy 10.5%.
Next up is iDVD, an application that you can use to create DVDs that are playable on any consumer DVD player. There are, once again, two aspects to performance in iDVD: video encoding performance and menu encoding performance. Since we've already looked at video encoding performance with Quicktime, this test is predominantly limited by how long it takes to encode the menu system in my test DVD. There is a small 13-second iSight video and audio that's encoded in the process, but it adds a matter of seconds to the overall time. The image is written to disc instead of sent to the DVD burner for obvious reasons. The results are expressed in seconds, lower being better. And once again, we are dealing with a multi-threaded workload, so both the Core Duo and Core Solo are present in the chart:
Here, the performance is extremely close between the G5 and Core Duo, with the latter completing the test 5 seconds quicker than the G5. The Core Solo loses some ground, taking another 41 seconds over its dual core counterpart.
A newcomer to Apple's iLife suite is iWeb, a web publishing application. I haven't had much time to play with the application, but I did use it as a benchmark - measuring the time that it took to publish a site with a handful of pages, 10 blog entries and 10 podcast entries. This test was mostly single-threaded, although there were a few moments where the second core did get some action, so I included both the Core Duo and Solo:
Here, we have one of the few situations where the Core Duo wins completely based on its architecture, as even the Core Solo holds a huge performance advantage over the G5.
iWork '06 Performance with Pages and Keynote
Now, let's shift our attention to Apple's iWork suite, with Pages 2 and Keynote 3. For the Pages test, I simply timed how long it would take to export a 116-page document to PDF. The test was single-threaded, so I'm only showing the Core Duo and G5 performance bars here:
The performance advantage is pretty decent here, as the Core Duo completes the task in about 30% less time than the G5.
For Keynote, there are two tests that I ran, both involving exporting a presentation. The first test exports the presentation to a PowerPoint (.ppt) file, which is a task that is pretty common for Keynote users:
The single-threaded test is much faster on the Core Duo, which completes it in a little under 60% of the time of the iMac G5.
The next test is exporting a smaller presentation to a Quicktime file, using the default export settings. This test is multithreaded, so we have the Core Solo in there again:
Interestingly enough, the iMac G5 actually pulls ahead in performance here by two seconds.
The Search for Universal Binaries
All of the applications that we've looked at thus far are Universal binaries, meaning that they are compiled to work on both PowerPC and x86 architectures. And although the number of Universal applications is quite large, there are still quite a few that are missing. The entire Microsoft Office suite, all of Adobe's products, and even Apple's professional application line have yet to be made available as Universal binaries. All have been scheduled and committed, but we're still at least another month away from seeing their debut.
Apple has done a tremendous job of making sure that non-Universal binaries do run on their new Intel based Macs, thanks to a binary translation program called Rosetta. Apple has been extremely quiet about the specifics of Rosetta, in my opinion, because it is a temporary solution that doesn't perform very well and they would rather that everyone forget it exists and port to Universal binaries immediately than rely on it as a crutch. The basic gist of Rosetta is this: when a non-Universal application runs its PowerPC assembly code, it is handed off to Rosetta, which then translates it into another form, optimizes it and then generates its own x86 code. The code is also cached along the way so that frequently used code blocks run quicker, since they don't have to be re-translated.
If you're familiar with compilers, this very much sounds like a real time compiler, except that you are going from low level assembly code to low level assembly code instead of a high level programming language to the latter. And although the process works, it is primarily to ensure functionality and wreaks havoc on performance.
You can tell if an application is Universal or not by looking at its info, the Kind: field will be listed as "Application (Universal)".
The other side effect to a Rosetta-style binary translation is that the amount of memory that you need goes up, sometimes significantly. Let's look at an example. First, let's take a Universal application, in this case iPhoto, and look at its memory footprint:
iMac G5 1.9GHz | iMac Core Duo 1.83GHz | |
iPhoto Memory Size (at Open) | 20.48MB | 21.24MB |
On the iMac G5, the application, with no photos in its database, takes up 20.48MB of memory. On the Intel based iMac, iPhoto '06 occupies 21.24MB. We've already seen that the Intel based Macs do take up a little more memory when running the same applications as the PowerPC based Macs, so the differences here are expected.
Now, let's take a look at a non-Universal application, Microsoft Word, that has to be executed using Rosetta:
Rosetta Performance Comparison | iMac G5 1.9GHz | iMac Core Duo 1.83GHz |
MS Word Memory Size (at Open) | 40.03MB | 64.43MB |
MS Word # of Threads (at Open) | 2 | 3 |
At startup, with no open documents, Rosetta increases the memory footprint of MS Word from 40MB to just over 64MB - an increase of over 60%!
Remember the PDF that we generated in our Pages benchmark earlier? Instead of outputting it to a PDF, I exported it to MS Word and opened it on the two machines. I timed how long it took to open the 116-page document, but first. let's look at how much memory MS Word is occupying:
Rosetta Performance Comparison | iMac G5 1.9GHz | iMac Core Duo 1.83GHz |
MS Word Memory Size (116 page Document Open) | 75.75MB | 218.79MB |
MS Word # of Threads (116 page Document Open) | 4 | 5 |
The memory footprint of MS Word has gone absolutely insane, growing from "only" 60% greater than the native application on the G5 to just under 3x the size. With the document open, the Intel based iMac had 218.79MB of its 512MB of memory being used by MS Word and Rosetta, compared to 75.78MB on the G5. I stressed earlier that 512MB isn't enough once you start to seriously use iLife/iWork applications. Now it's worth amending that to include anything that requires Rosetta to run.
So, how long did it take to open the Word document? Approximately 69% longer, thanks to the necessary binary translation during the process. Since Rosetta operates in its own thread, I checked to see if having a dual core processor sped things up at all. Unfortunately, the gain is basically nothing.
Rosetta Performance Comparison | iMac G5 1.9GHz | iMac Core Duo 1.83GHz | iMac Core Solo 1.83GHz |
MS Word Document Open | 27.1 seconds | 45.7 seconds | 47.9 seconds |
MS Word Document Convert to HTML | 36 seconds | 114 seconds* |
I eventually mustered up the courage to do the unthinkable: convert the open Word document to HTML. On the iMac G5, this process took a healthy 36 seconds; on the Core Duo based iMac running Rosetta, the process took 114 seconds and then crashed, leaving me without my HTML file. No matter what I did, I could not get the process to complete without crashing.
I turned to one more test of performance under Rosetta; this time, to see how Rosetta impacted graphics operations as well as some more CPU bound tasks. Cinebench 2003 has yet to be made Universal, and as a scripted benchmark, it's very easy to generate and compare data that it produces. I used the unoptimized (non-G5) version for both platforms to keep things as equal as possible. The results are below (scores are in Cinebench 2003's own units, higher numbers are better):
Cinebench 2003 Rosetta Performance Comparison | iMac G5 1.9GHz | iMac Core Duo 1.83GHz | iMac Core Solo 1.83GHz |
Rendering-1CPU | 203 | 76 | 75 |
Rendering-2CPU | 143 | ||
C4D Shading | 246 | 103 | 101 |
OpenGL Software Lighting | 634 | 182 | 185 |
OpenGL Hardware Lighting | 1336 | 506 | 504 |
Once again, the inclusion of a second core doesn't really seem to speed up the translation process at all, with the Core Duo and Core Solo posting very similar scores. The actual performance is absolutely abysmal, not to mention the serious performance hit when looking at the OpenGL tests. In the OpenGL Software Lighting test, the Core Duo running the benchmark using Rosetta can't even perform at 1/3 the level of the G5.
Final Words
There's a lot to conclude, so I will start at the highest possible level and move deeper.
I like the iMac, I like it a lot. Personally, it's not the right type of machine for me in that I do need a higher resolution display and more memory than the iMac can offer me. It would, however, make a great addition to the home network if I ever wanted to put an all-in-one machine somewhere else in the house. It's a computer that can look and work as well in a kitchen as it can in an office, and that's one thing that Apple has done very right with this platform. It took me this long to look at it, but I think that it could quite possibly be Apple's strongest offering as it accomplishes exactly what they are trying to do - which is build lifestyle computers.
So much has changed since I started using Macs on a regular basis just a year and a half ago. Apple has done a tremendous job of really fleshing out their own software suite; from improving their Pro applications to molding iLife and iWork into truly indispensable applications. Apple is quickly become a very vertical provider of everything that you could want to do with one of their computers. It is because of Apple's vertical nature as a software provider to the Mac platform that they were able to begin this Intel transition so very well.
Just about every application that I'd use is already available as a Universal binary, the only exceptions being anything from Microsoft or Adobe/Macromedia. While I don't view Rosetta as a real option if you plan on getting any work done with an application, it is a way to ensure a very seamless transition between platforms. It is largely because of Apple's self-sufficiency and their small size that they could undertake such a large transition and succeed so very well at it, but regardless of the reasons, the end results are positive.
I do stand by my comments, however, that the current Intel based Macs are more of a public beta test than something to which the masses should transition. The problem is quite plainly the dependence on Rosetta. If you find yourself running applications that are all Universal today, then the new iMac is a wonderful solution. However, anything that requires Rosetta to run is going to hurt. If you absolutely have to buy a machine today and it absolutely had to be an iMac, the early adopter in me would still recommend the Intel based offering, but it would be full of painful times as you wait for application support.
This is the second Apple article that I've written where I've felt that their base memory configurations are way off balance, especially on the Intel side of things. If you are expected to have to use Rosetta for things like Microsoft Office, you're going to need more than 512MB of memory. And Rosetta aside, if you're going to use iLife applications as they were intended, you're going to need more than 512MB. Given Apple's history with memory upgrades, we'll probably see them move to 1GB standard late this year with their Powermac replacement, but until then, I can at least complain.
As far as performance of the new Intel based Macs go, at least in Universal applications, it's quite good. While the G5 was clearly no slouch, in many cases offering performance better than a Core Solo processor, it does lose the performance per watt battle. It's also worth noting that a pair of G5s could never make it into an iMac of this form factor, meaning that the Core Duo's dual core performance advantages are reasonable to flaunt.
More than anything, I am interested to see how long it takes to bring Intel's compiler technology to the OS X platform. As Johan pointed out in his series on the G5, gcc 4.0 doesn't exactly produce the best code for AMD/Intel architectures, especially when compared to Intel's own C compilers. At last year's Fall IDF, Intel had a session on their compilers and OS X, so I tend to believe that things will get faster for Intel based Macs over time. Not only when Rosetta is no longer needed, but also as applications are better optimized for their architecture (e.g. Quicktime).
I'll close, as always, on a note about the future. We've seen that today, Intel already has the performance per watt crown with the Core Duo, and they also have the power advantage, consuming a third less power than a similarly clocked G5. Yet, the first Intel based Macs are nothing more than the G5 versions with a different motherboard and cooling. You tend to not over-design your chassis when you are Apple; rather, you design them to be as sleek and as minimal as possible. With the Core Duo based iMac consistently consuming 20 - 30W less than the G5 version, you can expect that the truly exciting Intel based Macs are the ones that don't look like these. It's those that I would personally wait for.