2012 · 43 citations · 33 references
EngineeringComputer EngineeringComputer ScienceComputer ArchitectureLow-power DesignOperating SystemsCachingHardware AccelerationPerformance OptimizationRun-time ReconfigurationCache MemoryCache PollutionData PrefetchingPrefetchingPrefetching MechanismsPrefetching StrategiesProcessor ArchitectureProcessor Systems
Hardware data prefetch engines are integral parts of many general purpose server-class microprocessors in the field today. Some prefetch engines allow the user to change some of their parameters. The prefetcher, however, is usually enabled in a default configuration during system bring-up and dynamic reconfiguration of the prefetch engine is not an autonomic feature of current machines. Conceptually, however, it is easy to infer that commonly used prefetch algorithms, when applied in a fixed mode will not help performance in many cases. In fact, they may actually degrade performance due to useless bus bandwidth consumption and cache pollution. In this paper, we present an adaptive prefetch scheme that dynamically modifies the prefetch settings in order to adapt to the workload requirements. We implement and evaluate adaptive prefetching in the context of an existing, commercial processor, namely the IBM POWER7. Our adaptive prefetch mechanism improves performance with respect to the default prefetch setting up to 2.7X and 30% for single-threaded and multiprogrammed workloads, respectively.
33
SPEC CPU2006 benchmark descriptions
John L. Henning · ACM SIGARCH Computer Architecture News · 2006 · 2K citations
Wm. A. Wulf, Sally A. McKee · ACM SIGARCH Computer Architecture News · 1995 · 1.5K citations
Hitting the Memory Wall: Implications of the Obvious
Wm. A. Wulf, Sally A. McKee · 1995 · 1.4K citations