Litcius/Paper detail

A Cost-Effective Entangling Prefetcher for Instructions

Alberto Ros, Alexandra Jimborean

202124 citationsDOI

Abstract

Prefetching instructions in the instruction cache is a fundamental technique for designing high-performance computers. There are three key properties to consider when designing an efficient and effective prefetcher: timeliness, coverage, and accuracy. Timeliness is essential, as bringing instructions too early increases the risk of the instructions being evicted from the cache before their use and requesting them too late can lead to the instructions arriving after they are demanded. Coverage is important to reduce the number of instruction cache misses and accuracy to ensure that the prefetcher does not pollute the cache or interacts negatively with the other hardware mechanisms.This paper presents the Entangling Prefetcher for Instructions that entangles instructions to maximize timeliness. The prefetcher works by finding which instruction should trigger the prefetch for a subsequent instruction, accounting for the latency of each cache miss. The prefetcher is carefully adjusted to account for both coverage and accuracy. Our evaluation shows that with 40KB of storage, Entangling can increase performance up to 23%, outperforming state-of-the-art prefetchers.

Topics & Concepts

Instruction prefetchComputer scienceCacheKey (lock)Parallel computingEmbedded systemOperating systemParallel Computing and Optimization TechniquesAdvanced Data Storage TechnologiesCloud Computing and Resource Management
A Cost-Effective Entangling Prefetcher for Instructions | Litcius