IA64 vs. Other 64-bit CPUs? 33
moZer asks: "There are countless reviews and comparisons between
Intel's P4 and AMD's Athlon, but so far I haven't seen any benchmarks
of IA64 versus other 64-bit CPUs. Is there anyone out there who has
experience from working with the IA64 that can say something about
its strengths and weaknesses?"
be patient (Score:1, Offtopic)
Re:No? (Score:1)
Re:IA-64 isnt out yet. (Score:3, Informative)
Not to defend Intel, but there has been about 10-15 years to develop compiler technology for the 386...
Re:IA-64 isnt out yet. (Score:2, Informative)
ie:
forloop(100times){
a = sin(9*10*12)/12;
function(a+loopcounter)
}
would become:
a = sin(9*10*12)/12;
forloop(100times){
function(a+loopcounter)
}
Which would save you calculating a 99 redundent times. This is where compiler technology is the same for every platform and where most research goes.
The other place to optimize is at the hardware level. For example if you target something like a G3, Pentium, or Itanium you have to order your instructions very well. The Pentium can execute two instructions per cycle if you correctly order them, so it is crucial you order your instructions as best you can! Simply by changing the order of the instructions your performance will double!
There isn't as much research here. It is different for a 386, 486, Pentium, K5, K6, P6, K7, G4, G4, EV6, EV7, Pentium4, or Itanium. The 15 years of research for making 386 compilers is as relevent for Pentium4 optimizations as it is for the Itanium.
Its not so much that the compiler optimizations are so different, its more that they are so critical. Those compiler optimizations will still help every other CPU line, its just that without them the Itanium suffers the most.
That is why every nearly CPU line now supports Out Of Order Execution; ie g3->g4, Pentium->pentiumPro... By letting the CPU grab an instruction from the list all soon to be executed instructions instead of just the very next intruction overall CPU performance inscreases by about 30%! In cases where the compiler was able to do a perfect job there would be a 0% increase, but those cases are rare. And that is what hurts the Itanium.
Re:IA-64 isnt out yet. (Score:1)
Re:IA-64 isnt out yet. (Score:1)
The real reason why the cpu is relatively slow is because the current silicon is basically a cleaned up version of the development / proof-of-concept early stuff. I have a system that has been upgraded all the way from the original A-step cpu / motherboard. Current production is at C0 or C1 stepping last I checked. I have two B3 cpus in my system right now.
The other reason behind the observed performance is that the compiler tech isn't really up to scratch yet. Many of the compilers (gcc in particular, for example) do not yet support feedback profiling (where you run the program, collect the profile data and recompile so that the compiler can use that information to do better code layout to minimize pipeline stalls, mispredicted branches etc).
Intel have been focusing their efforts on the McKinley release early next year. *That* will be the one to watch and will be a much fairer indication of whether IA64 will sink or swim.
Sun Microsystems? (Score:2, Informative)
Re:Sun Microsystems? (Score:2)
UltraSPARC I (Score:4, Insightful)
Running at 167MHz these chips were hotish for their time, but compared to USII (now at a maximum of 480MHz) or USIII (just recently 1050MHz) they are rather slow. Every three years or so Sun rework the SPARC design to have better pipelines, better prediction, more TLBs etc. and speed increases in-between odd number releases are just fabrication improvements. Sun is a chip design company not a chip fabrication company.
It's hard to compare Itanium with SPARC, PA-RISC, PowerPC and Alpha - as far as I know there are no benchmarks in which is performs very well against modern 64bit RISC chips, Integer and particulary FP performance is generally considered rather inferiour.
The true test of a server class CPU is how well it handles cache coherency and memory latency issues on machines designed to support 8 or more CPUs. Itanium has not been shown to scale to these numbers. This may of course be because it's not yet been used in a server platform which supports that number of CPUs.
What I find particularly intriging is how Intel's marketing department is going to handle the clock speed differences in their product range. They have always used MHz as a marketing tool, but now they're going to have to concede that their prestigious server CPU is almost half the clock speed than that of their desktop CPU.
Re:UltraSPARC I (Score:2, Insightful)
That's simply not been the case for the FP Spec benchmarks. For the latter half of the 90s HP and Dec were repeatedly trading the top spot on the table, and the x86 family realy didn't get a look in at all until recently, when about a year ago they came up with something which was nearly as good as a year-old alpha.
Even now, the x86 family is the 4th out of the major 5 families (power, alpha, sun, x86, pa).
Just look at
http://www.spec.org/osg/cpu2000/results/
Working with numeric computing - I actually use one of the benchmarking programs _every day_ - I find that the Spec banchmarks are very relevant to my world-view. If you know of other benchmarks that support your completely-disagreeing-with-SPEC view, then please post them here, so I can broaden my mind.
FP.
Re:UltraSPARC I (Score:1)
Sorry
I'm in complete agreement with you, in fact!
Erm, happy holiday season!
Ooops,
FP.
Re:UltraSPARC I (Score:2, Interesting)
I'm actually not that convinced by SPEC figures. From a customers point of view they are normally most concerned with whether or not the application actually runs (or is qualified by the ISV) on any chip architecture other than the one it was developed for (this is obviously less true with Java apps). The only real test for the performance of a CPU is how well the real-world application itself performs on a particular piece of kit. There are simply too many factors to take into consideration - ranging from OS performance (i.e. latency of system calls etc.), to network and disk IO (the usual killer on most real-world apps), to memory size and memory latency, to cache size and behaviour, to pipeline design (and bugs
I've worked for a particular UNIX systems vendor whose chip design group work very closely with their compiler group who work very closely with their benchmarking team. A factor of ten improvement in benchmark figures is not unusual almost always achieved through low-down cunning and an incredible knowledge of the benchmarks themselves. Does it improve a real-world application's performance? Only possibly...
Alpha? (Score:1)
I love that little over-engineered thing to bits.
:-)
"Intel Inside - The worlds most marketable warning label"
Re:Alpha? (Score:1)
:-)"
Exactly. I've never met an unhappy alpha owner. It's the slowest machine I own now, but I love my 21164 more than any other machine I've ever owned. As a programmer it was a joy to code for. And it is, as you say, bomb-proof.
Phil
A wee bit 'o' Googling (Score:3, Informative)
http://www.dl.ac.uk/TCSC/disco/Benchmarks/spec.
Not very detailed, but a broad comparison of different systems...something to start ya off.
McKinley (Score:2, Insightful)
Re:McKinley (Score:1)
McKinley *is* Itanium. Like Coppermine is Pentium (III I think).
Remember Katmai was the original PII -- well, Merced is the initial Itanium, and the second generation of Itanium is McKinley.
So, it's pretty pointless to say Itanium may never be released because (a) Merced is already here. And, (b) is you consider Merced not properly released, but McKinley to be so, Itanium is still properly released!
Confusing? Yes.
Any clearer? I hope so!
David
Re:McKinley (Score:1, Informative)
IA64 -- Instruction Set Architecture name
Merced, McKinley -- Intel codenames for IA64 designs
Itanium -- Intel's current brandname for IA64 CPUs
Right now, nobody knows what the CPU codenamed McKinley will be marketed as. But I'd bet a sixpack that it will say "Itanium" or "Itanium 2" on the box.
F-CPU (Score:2)
The F-CPU [f-cpu.org] project has been around for a good long while, and is supposed to be 64-bit. The idea of an opensource CPU is a neat idea, I must admit. Unfortunately it hasn't been updated in a while.
SPEC2000 (Score:3, Informative)
You can check out the details at spec.org [spec.org],
but I've found Ace's Hardware Top 20 Review [aceshardware.com] to be a more concise and readable version.
You can see that IBM's POWER4 has a fp peak of 1169,
while Intel's Itaniam has a fp peak of 701. In int performance, the Itanium is pretty dismal.
Use Ace's Hardware's specmine tool (Score:3, Informative)
Spec2000 int here [aceshardware.com] and Spec2000 fp here [aceshardware.com].
highlights for int base:
790-POWER4 1.3Ghz
677-AthlonXP 1.6Ghz
648-Pentium4 2.0Ghz
621-Alpha 21264C 1.0Ghz
569-PA-RISC 8700 0.75Ghz
537-UltraSPARC III 1.05Ghz
461-PentiumIII 1.13Ghz
410-MIPS 14000 0.5Ghz
379-Itanium 0.8Ghz
99-PowerPC 604e 0.25Ghz
highlights for fp base:
1169-POWER4 1.3Ghz
960-Alpha 21264C 1.0Ghz
827-UltraSPARCIII 1.05Ghz
734-PentiumIV 2.0Ghz
701-Itanium 0.8Ghz
624-AthlonXP 1.6Ghz
581-PA-RISC 8700 0.75Ghz
463-MIPS 1400 0.5Ghz
340-PentiumIII 1.0Ghz
91-PowerPC 604e 0.25Ghz
The Itanium gets wacked pretty badly in the int scores, but does respectably well in the fp code which is far easier to extract parallelism from although it is beat by the POWER4, UltraSPARC III, and Alpha 21264. Even HP's 8700 isn't far behind.
Even in the Itanium's strongest field, floating point, its little 32bit cousin, the PentiumIV, smokes it.
The reason you don't see many reviews is because its a pretty slow chip, especially compared against the POWER4. Actually the reason you don't see reviews is because gamers who own web sites write reviews for the large readership of gamers who care about the fastest video card and CPU for their games. The market for an expensive 64bit shootout is pretty small. But its easy to afford a new video card or CPU.
Heck, Intel gives them out for free if the site words a 10% win for Intel as "wiping the floor" and a 10% win for AMD as a "narrow victory"...
IA-64 isn't the best choice (Score:5, Interesting)
You can jump to conclusions, if you wish, by looking at Ace's Hardware [aceshardware.com] SPECmine [aceshardware.com] database, which contains all current SPEC2000 results. In case you don't know, those are the industry standard benchmarks. Here [aceshardware.com] is a sample query of the SPEC2000 integer benchmarks, and here [aceshardware.com] is a sample query of floating point results. As you can see, there are always better choices than the Itanium, and mostly from vendors who have been in the field of 64-bit processors for long, and probably with better prices too. You can never underestimate how important vendor reputation and experience is.
I alluded to the shortcomings of the instruction set of Intel's 64-bit offerings. Indeed, the poor performance can mostly be attributed to it (although the Itanium's poor design has helped a lot -- let's see whether McKinley fares better.) The truth is, Intel took VLIW and redressed it as EPIC; but VLIW has never been a panacea. Serial designs with out of order execution have been around longer, and worked great. The Itanium is a strict in-order processor, and the SPECint results show. And compiler technology isn't there yet; but Intel has acquired Alpha from Compaq and employed their compiler and MPU design team, widely reputed as the best in the field. Whether clever design will be able to mend the instruction set flaws, only time will tell. Indeed, the best strategy now is to wait a few years; seeing as how hardly a thousand Itanium system were actually purchased and paid for, most people seem to be taking this route. With McKinley the situation will be better for Intel, but not until the 3rd or 4th generation will the mass purchases begin, if ever.
Another common misconception is about the performance of Sun hardware. Just look at the values linked above from the SPEC benchmarks. Sun is known for scalable, reliable hardware, stuff you can depend on. But they're not the best performers by any account. The best designs come, undoubtedly, from the Alpha team; the upcoming EV8 would be the most advanced processor for a long time to come, if it weren't for Intel (who cancelled the EV8 project, obviously.) Unfortunately, Alpha is no longer a good buy, though not by technical merits. Having a vendor who will vanish sometime in the future is never a good strategy. Luckily, IBM's POWER series and HP-PA still remain, although the Precision Architecture will be discontinued some time in the future as well. IBM's Power4 design is the current king of the hill in SPEC scores, beating the closest competitors by a fair amount.
Finally, a great source of information is the Real World Tech [realworldtech.com] forum, and the ``Silicon Insider'' columns by Paul DeMone, on the same website. (Paul also regularly reads the forum, and posts quite frequently too.)
IA-64 non specullative and doomed (Score:2)
for the real dirt on intel's IA-64 read IBM's Power4 designers comment's on Mcroprocessor Report
so right that Intel wanted an appologie (-;
really its amazing that it has had so LITTLE critics as we all know you have to make trade offs and since this promises the world it would be intresting to actually see the silicon
regards
john jones
More to life than Spec (Score:2)