2009 · 81 citations · 26 references
ComputingComputer EngineeringComputer ScienceComputer ArchitectureParallel ComputingSystem-on-chip DesignCachingData LocalityData Locality OptimizationData Movement OptimizationMemory HierarchyMemory Hierarchy DesignCache DesignCache LocalityData Locality ManagementMemory Access PatternsOverhead ReductionPage MigrationPerformance OverheadShared Memory
As the last-level on-chip caches in chip-multiprocessors increase in size, the physical locality of on-chip data becomes important for delivering high performance. The non-uniform access latency seen by a core to different independent banks of a large cache spread over the chip necessitates active mechanisms for improving data locality. The central proposal of this paper is a fully hardwired coarse-grain data migration mechanism that dynamically monitors the access patterns of the cores at the granularity of a page to reduce the book-keeping overhead and decides when and where to migrate an entire page of data to amortize the performance overhead. The page-grain migration mechanism is compared against two variants of previously proposed cache block-grain dynamic migration mechanisms and two OS-assisted static locality management mechanisms. Our detailed execution-driven simulation of an eight-core chip-multiprocessor with a shared 16 MB L2 cache employing a bidirectional ring to connect the cores and the L2 cache banks shows that hardwired dynamic page migration, while using only 4.8% of extra storage out of the total L2 cache and book-keeping budget, delivers the best performance and energy-efficiency across a set of shared memory parallel applications selected from the SPLASH-2, SPEC OMP, DARPA DIS, and FFTW suites and multiprogrammed workloads prepared out of the SPEC 2000 and BioBench suites. It reduces execution time by 18.7% and 12.6% on average (geometric mean) respectively for the shared memory applications and the multiprogrammed workloads compared to a baseline architecture that distributes the pages round-robin across the L2 cache banks.
26
David Brooks, Vivek Tiwari, Margaret Martonosi · 2000 · 2.6K citations
Automatically characterizing large scale program behavior
Timothy Sherwood, Erez Perelman, Greg Hamerly et al. · 2002 · 1.7K citations
James Laudon, Daniel Lenoski · 1997 · 779 citations · Full text
Krisztián Flautner, Nam Sung Kim, Steve Martin et al. · ACM SIGARCH Computer Architecture News · 2002 · 742 citations