Institutional Repository
Technical University of Crete
EN  |  EL

Search

Browse

My Space

Slice-processors: an implementation of operation-based prediction

Pnevmatikatos Dionysios, Andreas Moshovos, Amirali Baniasadi

Full record


URI: http://purl.tuc.gr/dl/dias/0DABBE18-92EC-480F-9DA5-29492B96F13B
Year 2001
Type of Item Conference Full Paper
License
Details
Bibliographic Citation A.Moshovos, D. Pnevmatikatos, A. Baniasadi, "Slice- Processors: An implementation of operation-based prediction," in 2001 15th ACM Intern. Conf. on Super. (ICS), pp.321-334 .doi:10.1145/377792.377856 https://doi.org/10.1145/377792.377856
Appears in Collections

Summary

We describe the Slice Processor micro-architecture that implements a generalized operation-based prefetching mechanism. Operation-based prefetchers predict the series of operations, or the computation slice that can be used to calculate forthcoming memory references. This is in contrast to outcome-based predictors that exploit regularities in the (address) outcome stream. Slice processors are a generalization of existing operation-based prefetching mechanisms such as stream buffers where the operation itself is fixed in the design (e.g., address + stride). A slice processor dynamically identifies frequently missing loads and extracts on-the-fly the relevant address computation slices. Such slices are then executed in-parallel with the main sequential thread prefetching memory data. We describe the various support structures and emphasize the design of the slice detection mechanism. We demonstrate that a relatively simple organization can significantly improve performance over an aggressive, dynamically-scheduled processor and for a set of pointer-intensive programs and for some integer applications from the SPEC'95 suite. In particular, a slice processor that can detect slices of up to 8 instructions extracted over of a region of up to 32 instructions improves performance by 11% on the average (even if slice detection requires up to 32 cycles). Allowing slices of up to 16 instructions results in an average performance improvement of 15%. Finally, we study how our operation-based predictor interacts with an outcome-based one and find them mutually beneficial.

Services

Statistics