November 2019
Intermediate to advanced
404 pages
12h 9m
English
When conditional statements are run through a modern-day CPU, they undergo a lot of clever predictive techniques to make use of instruction-level parallelism. This is a feature where the CPU attempts to predict which direction a conditional statement will go in before it has actually been resolved and speculatively begins processing the most likely result of the conditional using any free cores that aren't being used to resolve the conditional (fetching some data from memory, copying some floating-point values into unused registers, and so on). If it turns out that the decision is wrong, then the current result is discarded, and the proper path is taken instead. So long as the cost of speculative processing ...
Read now
Unlock full access