palladin9479 :
The Itanium was a flawed design to being with, the magic compiler it needed never materialized because it's impossible to create. Intel can not predict the future, which is what is necessary for any VLIW orientated architecture to perform well as a general purpose processor.
huh? They don't need a magic compiler. The only thing a compiler for EPIC has to do beyond RISC or x86 is separately encode the data dependencies in the instruction stream. Optimizing compilers already do software scheduling, based on modeling of hardware resources and instruction latencies, and have for a very long time. In fact, it was arguably more important in the early days of pipelined and superscalar CPUs, and also with the small scheduling windows utilized by early out-of-order CPUs.
I don't see how you can argue that EPIC should be slower than x86, if Intel put the same resources behind custom layout and built it on the same process node as their flagship x86 CPUs. For that to ever happen, it had to reach critical mass, which it never did because no one wanted to be locked into buying CPUs only from Intel. Intel's lawyers made it impossible for a competitor to offer EPIC-compatible CPUs, by patenting every single aspect of the architecture and the technologies around it.
It is not a VLIW CPU. It performs on-the-fly instruction scheduling in hardware. It has branch prediction and speculative execution. VLIW CPUs have none of these.
The reason for encoding the op dependencies explicitly was to simplify the scheduling logic, which grows nonlinearly with the number of pipelines and the size of the scheduling window. Given a limited transistor budget, they chose to simplify the instruction stream so they could spend more of their die area on ALUs and still end up with a wide chip that could achieve good yield and hit cost and power targets.
The only point of agreement, here, is that a
benefit from very wide superscalar CPUs is only gained when there's loads of instruction-level-parallelism, which is scarce in most code. However, anything that runs fast on a GPU has loads of ILP (and it's no coincidence that VLIW has been used in GPUs, over the years). Fortunately, high-ILP is not uncommon in
performance-intensive workloads.
palladin9479 :
Neither AMD nor Intel produce native x86 CPUs and haven't for a very long time. Both of them design RISC CPU cores that have an external x86 instruction decoder / scheduler bolted on. It takes in the x86 instructions and converts them into RISC like load/store operations and then dispatches them to the internal computing resources for execution.
You're telling
me? I already said that!