In the Itanium case, the whole development cost is counted in, and the software product becomes very expensive, producing a kind of vicious circle: software won’t be low-cost until there are many Itanium-based platforms, but there won’t be many Itanium-based platforms until there are various low-cost programs for them. That’s why the Itanium platform lacks some popular programs in different fields (like SAP R/3, one of the most popular enterprise management systems). The emulation speed of x86 code is so low that you can forget about the idea of running resource-hungry code on the Itanium.
Of course, Intel is trying hard to change the situation for the better. For example, besides working with software developers, Intel is now working on a special (integrated into Windows for IA64) software layer that should translate x86 code into IA64 instructions “on the fly”. Transmeta employs something like that in its Crusoe processor using the “Code Morphing” mechanism (a special software layer inside the CPU translates x86 commands – and, theoretically, instructions of any architecture – into processor-native VLIW instructions on the fly). The promised performance level is half the speed of running Itanium native code. That is, the processor will execute x86 programs like average x86 systems do. That’s not much, but enough in many cases. And of course this is a big step forward from the current hardware emulation which gives a performance similar to Pentium 90-133MHz.
Other processor architectures have a historical advantage in this respect as they were forming up when all software was expensive. As a result, each existing processor architecture has accumulated numerous programs in the decades of its life. This is a buoy that keeps some of them afloat, by the way, we will see examples of such architectures later today. The Itanium platform hasn’t yet got this software baggage.
Actually, we might have waited for the new architecture to grow beyond its children’s diseases and accumulate the critical mass of software, if new market realities hadn’t risen up. AMD’s launching of the 64-bit and fully x86-compatible Opteron processor puts Intel into dire straits. On the one hand, the Opteron is not a direct competitor to the Itanium and AMD doesn’t position it as such. Capabilities of systems of dozens of Itaniums and of 8 (at maximum) Opterons (such servers even haven’t been yet officially introduced) differ too much for that.
On the other hand, the 64-bit architecture removes many obstacles inherent in the x86 architecture, while the smaller performance of the Opteron in floating-point calculations (it is faster than the Itanium in integer calculations) is compensated by the much lower cost of the system. And the main advantage of the Opteron-based system is the ability to use existing software. You can decouple the purchase of hardware and software – thus buying a 64-bit system on credit. You see, the times when customers’ IT budgets were infinite have gone, and it seems like forever.