No more mysteries: Apple's G5 versus x86, Mac OS X versus Linux
by Johan De Gelas on June 3, 2005 7:48 AM EST- Posted in
- Mac
Summary: the cores compared
Below, you find a comparison of the Intel Xeon/Pentium 4, the Opteron/Athlon 4, the G5 and the previous CPU in the Apple Power: the G4 of Motorola.CPU feature |
Motorola G4+ |
G5 (IBM PowerPC 970) |
Intel Xeon P4 Irwindale |
AMD Opteron Troy |
Process technology |
0.18 µ CU SOI |
0.09 µ CU SOI |
0.09 µ CU |
0.09 µ CU SOI |
GP Register Width (bit) |
32 |
64 |
64 |
64 |
Number of transistors (Million) |
33 |
58 |
169 |
106 |
Die Size (mm²) |
106 |
66 |
+/-130 (112 for 1 MB L2) |
115 |
Maximum Clockspeed (MHz) |
1400 |
2700 (liquid cooled) |
3800 |
2600 |
Pipeline Stages ( fp) |
7 |
16 (21) |
31 - 39* |
12 (17) |
issue rate (Instruction per clockcycle) |
3 + 1 Branch |
4 + 1 branch |
4 ports, max. 6 (3 sustained) |
6 (3 sustained) |
Integer issue rate (IPC) |
3 + 1 Branch |
2 |
4 (3 sustained) |
3 |
Floating point issue rate (IPC) |
1 |
2 |
1 |
3 |
Vector issue rate (IPC) |
2-4 ( Altivec) |
2-4 ( Altivec, velocity) |
4 Single(SSE-2/3) |
4 Single(SSE-2/3) |
2 Double (SSE-2/3) |
2 Double (SSE-2/3) |
|||
Load & Store units |
1 |
2 |
2 |
2 |
"instructions in flight" (OOO Window) |
16 |
215 (100) |
126 |
72 |
Branch History Table size (entries) |
2048 |
16384 |
4096 |
16384 |
L1-cache (Instruction/Data) |
32 KB/32 KB |
64 KB/32 KB |
12k µops (+/- 8-16 KB)/16 KB |
64 KB/64KB |
L2-cache |
256 KB |
512 KB |
2048 KB |
1024 KB |
L3-cache |
2 MB DDR SRAM 64 bit at 1/4 th of core clock |
none |
None |
none |
Front Side Bus (MHz) |
166 |
1350 (675 DDR) |
800 (200 Quad) |
N/A |
Front Side Bus (GB/s) |
1.3 Half Duplex |
10,8 Full Duplex |
6.4 Half Duplex |
N/A |
Memory Bandwidth (GB/s) |
2.7 |
6.4 |
6.4 |
6.4 |
Core Voltage |
1.6V |
1,1V ? |
1.38V |
1.4V |
Power Dissipation |
30W at 1 GHz |
+/- 59 (Typical) -80 Watt (max) |
110 W (Typical) |
92,6W (Max) |
*31 is branch misprediction pipeline length, 39 is the length of the total pipeline including decoding stages before the trace cache.
Let us summarize: in theory, the PowerPc 970FX is a very wide, deeply pipelined superscalar monster chip, with excellent Branch prediction and fantastic features for streaming applications. And let us not forget the two parallel FPUs and the SIMD Altivec unit, which can process up to 4 calculations per clock cycle.
The disadvantages are the rather coarse way that the 970FX handles the instruction flow and the high latency to the RAM.
Enough theory. Let us see how the G5 2.5 GHz and 2.7 GHz compares to the 3.6 GHz Xeon Irwindale and Opteron 250 (2.4 GHz). The Opteron 852 arrived just a day before my deadline, but I think that you will know how the 252 performs compared to the 250. Before we tackle performance, here are a few quick notes about power dissipation.
Power to the PowerPC
How power thirsty is this PowerPC 970FX? His predecessor, the 0.13µ SOI PowerPC 970 was a pretty cool chip. It consumed about 42W at 1.8 GHz (1.3v). The newer 0.09µ SOI PowerPC 970FX CPU is reported to dissipate about 55-59W at 2.5 GHz. However, a few annotations must be made.First of all, IBM and Apple tend to increase the core voltage when running at higher clock speed. This makes the needed power increase more than linearly. For example, the 1.8 GHz PowerPC 970 consumed 42 Watt, but the 2 GHz version (both 0.13µ CPUs) needed 66 Watt.
Secondly, the TDP IBM talks about is typical , not maximum like AMD's.
Let us clarify this by checking IBM's and Apple's numbers. For the 90 nm, IBM's own documents tell us that the PowerPC 970FX only consumes 24.5 Watt at 2 GHz (1V). However, the same 0.09µ SOI PowerPC970FX is reported to consume about 55W at 2.3 GHz (1.1V?) in the Xserve, according to Apple's own website. Typically, you would expect the G5 to consume about 28 Watt (24.5 * 2.3 / 2) at 2.3 GHz, when using the 24.5 Watt at 2 GHz as a reference. Apple talks about "at most" (maximum), and IBM about "typical".
Still, that is a huge gap between "typical" and "maximum" power dissipation. The 55 Watt number seems to indicate that the core voltage must have been increased significantly at 2.3 GHz. The maximum power dissipation of the 2.5/2.7 GHz G5 inside the liquid-cooled PowerMacs might thus be quite a bit higher than in the 1U Xserve, probably around 80 Watt for the 2.7 GHz. That is a lot of power for a 66 mm² CPU, and it probably explains why Apple introduced liquid cooling. The liquid cooling system inside our PowerMac wouldn't get warm and wouldn't be necessary at all if the two 2.5 GHz CPUs were only dissipating a 59 Watt maximum.
116 Comments
View All Comments
exdeath - Friday, June 3, 2005 - link
Wow look at a 2.4 GHz Opteron clean house.I'd like to see what a 2.6 GHz FX-55 with unregistered memory would do ;) I'll be fair and say keep it at 2.6 GHz stock ;)
bersl2 - Friday, June 3, 2005 - link
Right. GCC 4.0 has an all new optimization framework, including autovectorization:http://gcc.gnu.org/projects/tree-ssa/vectorization...
Pannenkoek - Friday, June 3, 2005 - link
It is well known that GCC 3.3 can't vectorize code. However, GCC 4 should be able to, eventually if not already.The small cache of the G5 would hamper its server performance I'd reckon, regardless of other factors.
jimbailey - Friday, June 3, 2005 - link
I'm curious if you rebuilt Apache and MySQL from source. Apple has added significant amount of optimization to gcc and I would love to know if it has been included in this test. I don't doubt the results though. The trade off for using the Mach micro-kernel is well known.rubikcube - Friday, June 3, 2005 - link
Johan, I agree that all the facts point to your conclusions being accurate. I would bet all the money in the world that you are correct. However, this hypothesis is easily confirmed by running mysql on a G5 running linux.Olaf van der Spek - Friday, June 3, 2005 - link
> In Unix, this is done with a Syscall, and it results in two context switches (the CPU has to swap out one process for another)Does it?
As far as I know it doesn't. The page tables don't need to be swapped and neither does the CPU state. The CPU gets access to the kernel-data because it goes to kernel-mode, but that doesn't require a full context switch I think.
WileCoyote - Friday, June 3, 2005 - link
Tough crowd...Eug - Friday, June 3, 2005 - link
Of the stuff I understand, I agree with your conclusions, but I think it's reasonable to state that running Linux on the G5 yourself would have been the most definitive test.Anyways, I like fusion food. :)
cHodAXUK - Friday, June 3, 2005 - link
Great article, very educational read and it was very interesting to see what is holding the G5 back. IBM/Apple really need to address these issues, people are paying alot of money for G5's that are dilvering nowhere near the level of performance that they *theoretically* should be.Netopia - Friday, June 3, 2005 - link
WOW... great article.I too would like to see Yellow Dog (Or FC4) loaded on the G5 for a true head-to-head. I hope you have the time with the box to get 'er done!
Joe