cost effective memory dependence prediction using speculation levels and color sets
Memory dependence prediction allows out-of-order issue processors to achieve high degrees of instruction level parallelism by issuing load instructions at the earliest time without causing a significant number of memory order violations. We present a simple mechanism which incorporates multiple speculation levels within the processor and classifies the load and the store instructions at run time to the appropriate speculation level. Each speculation level istermed as a color and the sets of load and store instructions are called color sets. We present how this mechanism can be incorporated into the issue logic of a conventional super-scalarprocessor and show that this simple mechanism can provide similar performance to that of more costly schemes resulting in reduced hardware complexity and cost. The performance of the technique is evaluated with respect to the store set algorithm.At very small table sizes, the color set approach provides up to 21\% better performance than the store set algorithm for floating point Spec-95 benchmarks and up to 18\% better performance for integer benchmarks using harmonic means.
memory dependence prediction store sets load speculation speculative execution wide issue superscalar