The difference between genius and stupidity is that genius has its limits - Albert Einstein
An Intel representative said today: "All current Itanium CPUs run 32bit software in hardware. They have a so called "IA32 Decode, Control"-unit which translates 32bit instructions in a way that the execution resources are able to execute these instructions. That is all done in hardware."
Apologies.
Letter
Adamson Rust makes the same mistake as a lot of people writing about IA32 performance of Itanic. He writes
"Itanium platform emulates ia32". That's not true. The CPU is built in hardware. The problem is just that that part of
the hardware is very slow. It is probably some simple x86 core bolted onto another completely different processor. It's
not surprising that the performance suffers. But it's not emulated.
The HP itanium 2 performance white paper says they improved that hardware module somewhat in Itanium 2: it is supposed to have a similar speed as a PentiumPro 400 now. Still pretty bad for a CPU with such an impressive memory subsystem (3MB of cache) as a McKinley.
Itanic 1 was a complete loss - the SPEC results of ia32 code were around the level of a Pentium 1 75. But it wasn't emulated again. Even hardware can be very slow.
The only thing that is usually emulated are the 32bit calls in the OS. The IA64 OS are native 64bit, but when an 32bit process calls them all the data structures need to be converted from 32bit to 64bit. That is an emulation layer. Cost of performance for that is minimal.
x86 has used out of order processing for many generations (starting with the PentiumPro). The only shipping x86 avoiding it is the VIA C3 (which in general has not so good performance, still better than Itanium 2 on ia32 code though)
When Itanium started to really emulate IA32 code, e.g. converting it at runtime using a Just In Time compiler to native IA64 code (similar to the Transmeta Crusoe), then performance would be likely better. For example the Alpha at one point was the fastest x86 with emulation. The PARISC emulation from HP on IA64 works in a similar way. Microsoft added a nebulous new emulation layer in newer 64bit beta of Windows XP which may be just doing that.
Andi
Email address supplied