IA64 is not intended for the desktop. Maybe one day, but that day is still very far away. I dont even think intel has ever said IA64 was intended for the desktop eventually.
--
Second, they calculated that there would be a time after the introduction of the 64-bit CPU where it would not be a great performer on current software, <snip> They intend to take advantage of this 'twilight'
--
Remember the Pentium Pro ? That was a very long time after 32 bit had become a reality with the 386. Even then 16 bit mattered.. a lot. Going from 16 bit to IA32, wasnt nearly as challenging as going from IA32 to IA64.
Today, we are beginning to see the first 64 bit IA64 cpu. No software yet though, well hardly anyway. I think intel is making the same mistake all over again. Itanium runs 32 bit software *really* slow (P100-like). This twighlight might acually last a year or 5, maybe 10. During this time, running mixed 64/32 bit software on a IA64 is probably not an option.. this rules out Itanium, unless for some very specialized tasks for which optimized IA64 software is out. Why go for IA64 then anyway ? Why not established (64 bit) RISC architectures ? Unless IA64 would be that much faster, which remains to be seen.
Meanwhile, P4/5/+ will remain 32 bit, so applications that require large (I mean, HUGE) memory access, are not well suited for IA32 either.
It makes perfect sense to take advantage of this. I think AMD has taken a very wise approach with X86-64. You get full speed 32 bit, which will be necessary for a long time (especially on the desktop), and you get "free" 64 bit support if required (mainly in the server area for at least 5 years). From what I read, convertion to x86-64 would be a whole lot easier than to IA64.
I dont really see IA64 compete with x86-64. IA64 is much more a competitor to existing 64 bit RISC architectures, since it has nearly nothing in common with x86. x86-64 on the other hand, seems like a good way to extend the life of x86.