About the Itanium
Nick Weaver is a 28-year old graduate student and researcher, teaches computer science classes at the University of California's Berkeley school
Icebergs
But then the trouble began. His lecture calls Itanic an "unquestionable disaster..."greatly increasing implementation complexity without really providing a benefit to either compiler writers or to performance".
Like what?
"The rotating register file, and the register window notion - they have a thousand registers in there, and the larger the register file the slower it is and the more it costs.
"The rotating register file is there to make software pipelining easier - fills - but it's not actually a big win - and if you ask the compiler writers they go 'why do you this?'". The register window also incurs a performance penalty when doing garbage collection, he suggests.
"The other issue is that combining both features requires that the processor be able to effectively arbitrarily remap a number of logical registers - 128 to the physical registers, which number arounda a thousand. This occurs in a traditional out-of-order machine, but the whole point of EPIC is was to enable lots of parallelism without introducing these complications."
As for the future, he says it isn't completely hopeless. " Once you add a feature to the instruction set it's hard to take it away," he tells us.
Itanic could be helped by a process shrink and wider issue width, by real vector (Cray-like) instructions, but most of all by compiler improvements.
"The right compiler can theoretically allow Itanium to issue 6 instructions/cycle, but at the same time, if the compiler speculates too heavily, this wastes too much effort and performance suffers."
theregister.co.uk |