3 ms·
> Itanium shipped, and I have a soft spot in my heart for it, VLIW was brilliant. The hate is administered by knownothings, it was a CPU for engineers. Around
by throwawaylinux 5y ago
> Itanium shipped, and I have a soft spot in my heart for it, VLIW was brilliant. The hate is administered by knownothings, it was a CPU for engineers.
Around the 90s, the big OOOE scare and push to move away from it seemed to be based on projections showing wire delay and super-linear scaling structures like schedulers would bite OOOE very hard and make it nonviable.
This might have been technically true -- Pentium Pro reorder buffer was 20 entries while new cores might have only 10 times that, about an order of magnitude. Processor widths only by about 2x. IPC has increased about an order of magnitude as well (ignoring SIMD). While transistor density increased 3 or 4 in that time.
So I don't see a huge problem with that general prediction. What I wonder about is why on earth they thought in-order VLIW could solve this in a better way. Itanium scaling ran out of steam well before the out of order designs. And huge widths never happened or probably didn't help much because they're always just going to get stuck on taken branches, data dependencies, etc.
I liked Itanium when it first came out, it was a floating point monster and even on integer it shaped up pretty well against the likes of POWER4 in the TPC-C wars, exchanging the lead for several generations. But it became apparent that it depended on heroically fast (and therefore sadly tiny) L1 cache which halted its frequency scaling. It depended on a heroically large L3 cache which was became a problem in the multi core era. All because it dealt badly with dynamic hazards like cache misses, and executing beyond them to generate memory level parallelism.
Sure it had advanced loads which were very cool on paper, but never really were such a capable substitute.
I don't hate EPIC/VLIW. Some people hate Itanium because they claim it killed of a lot of diversity in the CPU market. I don't think that it did, and wouldn't hate it even if I thought it did. I can see why it failed though, and that's because it was technically inferior to out of order designs for most of its target markets.
- ethbr0 5y agoIt would be fascinating to teach a 3xx level course on Itanium aspirations, design, and failures, because I think they literally speak to everything that was happening in microarch (and much of what has happened since) from 1990 - 2020.