2009 · 98 citations · 47 references
EngineeringComputer EngineeringComputer ScienceComputer ArchitectureHardware-software Co-designSystem-on-chip DesignCachingData Locality OptimizationData Movement OptimizationMemory HierarchyMemory Hierarchy DesignMemory Hierarchy OptimizationAddress Space ManagementAllocation PoliciesCache ArchitectureCache DesignCache OptimizationData PlacementDynamic PlacementPlacement
In future multi-cores, large amounts of delay and power will be spent accessing data in large L2/L3 caches. It has been recently shown that OS-based page coloring allows a non-uniform cache architecture (NUCA) to provide low latencies and not be hindered by complex data search mechanisms. In this work, we extend that concept with mechanisms that dynamically move data within caches. The key innovation is the use of a shadow address space to allow hardware control of data placement in the L2 cache while being largely transparent to the user application and off-chip world. These mechanisms allow the hardware and OS to dynamically manage cache capacity per thread as well as optimize placement of data shared by multiple threads. We show an average IPC improvement of 10-20% for multi-programmed workloads with capacity allocation policies and an average IPC improvement of 8% for multi-threaded workloads with policies for shared page placement.
47
Steven Cameron Woo, Moriyoshi Ohara, Evan Torrie et al. · 1995 · 3.6K citations · Full text
Christian Bienia, Sanjeev Kumar, Jaswinder Pal Singh et al. · 2008 · 3.4K citations
Simics: A full system simulation platform
Peter Magnusson, Magnus Christensson, J. Eskilson et al. · Computer · 2002 · 2.1K citations
The SPLASH-2 programs: characterization and methodological considerations
Sandi Woo, Moriyoshi Ohara, Evan Torrie et al. · 2002 · 1.6K citations