Design Philosophy of the IBM PowerPC 970
D.J. Hodge writes "Ars Technica has a very detailed article on the PowerPC 970 up that places the CPU in relation to other desktop CPU offerings, including the G4 and the P4. I think this gets at what IBM is doing: 'If the P4 takes a narrow and deep approach to performance and the G4e takes a wide and shallow approach, the 970's approach could be characterized as wide and deep. In other words, the 970 wants to have it both ways: an extremely wide execution core and a 16-stage (integer) pipeline that, while not as deep as the P4's, is nonetheless built for speed.'"
As evidenced by this review
tcd004
2h = second half
03 = 2003
In the case of Blizzard that means Fall 2005.
-- Knowing too much can get you killed, but knowing who knows too much can make you rich.
What's the difference between the Power4 and the PowerPC 970? As a Mac guy, I've been following all of the rumors and announcements with interest but I keep seeing the PPC970 referred to as a scaled-back version of the Power4.
Why wouldn't Apple go with the Power4 over the PPC970? And I already know that nothing official has been announced by Apple and that this is all probably going to be a lot of sturm und drang signifying nothing, but that's what keeps us Mac guys going I guess.
I recall IBM's PPC boards going for over a grand, which is (to me) far too much. Especially when it was a 'G3' chip.
Even if the new chip is faster, will I be able to buy 2 pentium 4's (5?) for the price of it?
Kudos to the Ars team yet again for going deeper into CPU designs than 99% of the populace need to go :)
I think that since this is a 64 bit chip, why not compare it with other 64 bit consumer desktop chips (ie, AMD Clawhammer)? A lot of Intel's questionable moves (12K micro-ops instruction cache?) for the P4 were obviously not copied by AMD, and x86-64 seems to be the 64 bit desktop chip of the future.
Make sure everyone's vote counts: Verified Voting
The PowerPC 970 has other potential customers as well, though, not the least of which is IBM itself who, with its large investments in Linux, would love to see a high-performance, 970-based 4-way or 8-way SMP Linux desktop workstation halt the steady flow of former 64-bit *NIX workstation users who began switching to Wintel hardware in the late 90's.
Before all my fellow Mac users start A) thinking about going to Linux B) drooling C) wondering about Darwin or D) some combination of the above, let me remind you that Darwin scales very well. You can now return to your previous state of awe.
PS - How much you want to bet good ol Steve is already having wet dreams about doing the traditional Photoshop test at a Macworld with 4-way SMP?
This chip could be the start of something big in the Linux space as well. Think about it, we are now at a point where a few companies other than Intel are now poised to take the center stage in the next gen workstation, most notably AMD, Apple, and now IBM themselves.
While Linux has run on PPC chips for a long time, it is difficult to come upon a G4 chip without paying the "Apple Tax" for the hardware. If IBM steps up to the plate with this chip, which can then run OS X, Mach, Linux, *BSD, (insert other OS'es here), and can be purchased directly or in a package from IBM, we may see a good set of Windows challengers for the desktop and server room. Obviously OS X will still only run on Apple derivatives.
These chips will be big, I guarantee it, and not just for Apple. It will be interesting to see if Microsoft ports Win XP to these chips.
Why would they want to?
Intel and AMD have the x86 market pretty well locked down.
More importantly, why would ANYBODY want to implement the x86 ISA (Instruction Set Architecture or smtn like that). It's the most horrid instruction set in use today.
Some instruction sets can't really be mapped to others easily, and optimizing for good performance with PPC would probably not have good x86 performance anyways.
In Pentiums and Athlons, the instruction set isn't really emulated. It's translated to a smaller instruction set (uops, iops, pick whatever term you like and run with it). However, these smaller sets are still made pretty much specifically to cover the overlying ISA (x86 in this case).
I think Apple will stick with a company that it knows, IBM, since they have been working together for years. It doesn't seem that Apple will just jump ship to the x86 platform. This would also mean redoing the Mac OS X code and optimization (not like they will have to do some anyway, but they will have to do more). It is highly unlike that Apple will go with a heat producing, energy wasting x86 Intel chip.
Apple will almost certainly go with 970 and not switch to Intel for the following reasons: 1. It is difficult to emulate PowerPC with Intel (although the reverse isn't *that* difficult). Apple would need a PowerPC emulator so that all that software (including OSX software) isn't lost. 2. Apple wants to differentiate itself somewhat from the PC. 3. IBM appears to be moving up after the several years of problems with Motorola. The downside is that by the time a 970 board is out it will definitely be in the middle of the pack relative to the PC world. That means that Apple still will have computers that are more expensive than the PC world and that aren't as fast. Of course I think OSX is sufficiently better than either Linux or WinXP for a workstation that I'll stick with it. But Apple best hope that IBM gets large yields on time and perhaps with better speeds than expected.
finally they'll see that clock speed does make a difference Clock speed is something Intel uses to bolster their performance claims and give people an excuse to upgrade to the newest model. Clock speed tells very little about the performance of a computer. Look at AMD's athlon. Many reviews like the ones on tom's hardware show that running Windows on a "slower" athlon yeilds better performance than a comparably clocked P4. If you meant that finally, if apple runs on x86, there will be a better benchmark between Windows and MacOS, you would be more accurate. Until that happens you are comparing two different fruits.
0xfeedface
The other responses to your question have pretty much hit it dead-on. I just wanted to comment that the PowerPC has always been the little brother of the Power architecture used originally in the RS6000 ... and now in almost everything IBM makes - AS400, E9000, etc.
... because of this the migration of everything into one die for the PowerPC was amazing.
;)
The first generations (601, 603/604 and the ?aborted? 620) of the PowerPC line were scaled-back versions of the Power and Power2 architectures respectively [the original Power architecture was mounted on a 3x5 daughter card with 4-5 separate chips [I'll have to go looking for my tech papers] making-up the core
Additionally, IBM has tended to work-out new capabilities -- such as the move to 64-bit and dual cores -- on the larger scale Power architecture, before attempting to stuff it into the smaller PowerPC pacakge [besides, IBM has to keep something to distinguish its pricier iron from the OEMs.
Natty
Maybe the rain Isn't really to blame. So I'll remove the cause, But not the symptom!
...an extremely wide execution core and a 16-stage (integer) pipeline that, while not as deep as the P4's, is nonetheless built for speed.
:-)
For those not planning to read the article, I wanted to mention the following so you do not get the wrong impression. The speed that the article refers to (of a long integer pipeline, like a 16-stage or like the Pentium IV's 20-stage) is clockspeed, not necessarily actual performance. The P4's super long pipeline, for example, allows it to run at higher clock speeds, but less work gets done in the same number of clock cycles. This is the "braniac" vs "speed demon" philosophy (with a high clock speed but low instructions-per-clock representing "speed demon") and neither is necessarily better than the other (though one is obviously better for the marketing dept.)
Just don't assume that "built for speed" always means "built to be fast" -- a confusing but important distinction.
Computer Science is no more about computers than astronomy is about telescopes. --E. W. Dijkstra
" OpenMP is a specification for a set of compiler directives, library routines, and environment variables that can be used to specify shared memory parallelism in Fortran and C/C++ programs." All that would have to be added to gcc are the "compiler directives", as the "library routines" and "environment variables" aren't directly a part of the compiler.
Now, openMP is good for programming extremely high-performance shared-memory applications, like scientific computation applications and stuff like that. It really sounds like overkill for a desktop environment where it's probably easier to program a multithreaded application with standard IPC mechanisms where communication is required. And really high-performance applications could also be programmed using MPI and a message passing communication scheme, which is far more widely used (compare the # of people who know about openmp versus those who know about mpi), probably wouldn't be much less efficient, and would quite likely scale much better than a shared memory implementation.
IT IS ONLY 40 BITS not 64
Your desire to use address pins (or is it max pinned space per process?) to measure size puts you in a distinct minority. That doesn't make you wrong. But neither does it help make you right in this particular jungle.
Systems whose physical addressing match their claimed "bitness" are probably in the minority.
Some systems provide more physical addressing than register width (later PDP-11s, 8086, S/390), some less (68000, classic CDCs, early POWER). The 970 falls into the less category. Nothing unusual there.
Apple, like EVERY OTHER OS KNOWN, will steal a bit or two
Some bits come from physical addresses, some from virtual addresses. These should be addressed [pun slipped in, sorry] separately. AIX, btw, steals less than one bit. Linux can also be configured to steal less than one bit. (Assertions I can get away with no loss of credibility, since AC's have none to start with.) Were you frightened by a VAX in your formative years?
Why do fanboys mod stuff like this down?
Because we can't figure out why someone who needs 512GB, or 1TB, or more (which is it?) cares that a Linux process is limited to 1GB and not 2GB or 4GB.
40 bit address bus. Not a 40 bit data bus. BIG difference there.
And the 40 bit address bus is most likely a pin packaging limitation. They did not see a need to bring those extra 24 address lines out to the chip package. Internally, it is 64 bit. Much like the venerable MC68000 was 24 bit externally, but 32 bit internally.
But seriously, in the life-span of THIS processor implementation - do you seriously see ANY desktop manufacturer even thinking about putting that much RAM in their CPUs?? Heck 1GB of RAM is not 'standard' yet. Extrapolating w/ Moore's Law, we'll be approaching 40bits in 8 years. Apple will undoubtedly have another chip before then!
If you truly need THAT much physical storage today, you'll need to shell out for a SERIOUSLY large server. IBM's high-end p690 currently maxes out at 256GB. The virtual address space is undoubtedly much higher.
Tom