Hacker News new | ask | show | jobs
by thethirdone 1337 days ago
> In turn Out-of-Order execution largely displaced RISC as you could get better throughput for the same number of transistors by moving more work into the compiler.

What work does OoO execution displace to the compiler? I thought that OoO CPUs get better performance on the exact same programs compared to in order CPUs.

1 comments

Ensuring register accesses are interleaved in a good way right?
Register renaming allows CPUs to eliminate stalls due to reuse of a register; I have not noticed any compiler putting particular emphasis on interleaving accesses well.

That is actually more of a problem on in order CPUs because a single stall will hold up the entire CPU instead of take longer to commit while other stuff is going on.

So if compilers did this better then processors wouldn't need the extra complexity and the transistors needed to support it themselves?