Re: Oh that's just great
"Except that "out of order" cpus do not inherently have a predictable instruction execution time, even in a single thread environment, and Intel's threads are "virtual" ie not dedicated - which is where these bugs originate - which means if the CPU is hard at work on multiple threads, unless you have control over what all of them are doing, timings are being actively randomised,<p>"
Wow. Hard to keep up with what all is wrong here. Microprocessors are not magic. If you get them into a known state, and feed them a given set of inputs at given points in time, they will give you the same results. Every time.
I did microprocessor validation for a decade just as OOE became a thing at AMD & IBM. We had cycle-accurate simulations of all of these processors (eventually). This includes, for instance, the STI Cell microprocessor which had two clock domains (one for the ppc core and one for the spus).
Yes, if threads are sharing execution units, you have to know what is being executed on both threads to predict timing. But again, from a given initial state and a fixed set of inputs, the final state is deterministic.