7 ms·
Just giving up speculation entirely is too much of a performance penalty. So one possible solution is: when you know it was a misspeculation, processor can just
by drivebycomment 9y ago
Just giving up speculation entirely is too much of a performance penalty. So one possible solution is: when you know it was a misspeculation, processor can just kick cache lines out of cache if the speculation caused the cache line to be loaded (probably you only need to do this at the last level cache closest to the memory). More states to track, but not impossible.
- DannyBee 9y agoThis only works if it's not observable by other cores/CPUs (IE you have no shared cache coherency). Otherwise, they can observe it before you roll it back due to the way the coherency protocols work.