4 ms·
I just finished up a senior Computer Architecture class last term and a flavor of this was a popular question for past exams. For a more fun answer than an exa
by Everlag 9y ago
I just finished up a senior Computer Architecture class last term and a flavor of this was a popular question for past exams.
For a more fun answer than an exam, consider that the real estate on a CPU is typically dominated by two things, cache and out-of-order speculation hardware(predictors and such). Then, turning off speculative execution would be like turning off a third of your CPU. As to the actual performance impact, it'd be massive. There's a reason why no modern processor is in-order.
- mhkool 9y agoThe Mill CPU which is currently being developed is in-order and its performance target is higher that current Intel CPUs while using 1/10th of the power. out-of-order is just one way that a hardware vendor choose to increase performance. Mill choose an other way.
- FartyMcFarter 9y ago> There's a reason why no modern processor is in-order. You can still have out-of-order execution without branch prediction. That said, I'm inclined to believe you're right about a massive performance impact (for many programs at least).
- arcticbull 9y agoThe real issue is the speculative execution of loads and stores which cannot be rolled back in the event a branch is not taken.
- userbinator 9y agoThere's a reason why no modern processor is in-order. No modern performance-oriented processor, that is. Plenty of low-power, area-constrained embedded ones still are. The Intel Quark series of SoCs, for example. Those are basically a very fast 486, with the same 5-stage in-order pipeline. (For some amusement, get Quark datasheet and compare it with the 486 datasheet --- some of the microarchitecture diagrams are identical, and some clearly had only "Intel486" replaced roughly with "IntelQuark".)
- pertymcpert 9y agoModern smartphones running Cortex-A53 clusters would like a word.