Back to Search Start Over

Cooperative cache scrubbing

Authors :
Sartor, Jennifer B
Heirman, Wim
Blackburn, Stephen
Eeckhout, Lieven
McKinley, Kathryn
Sartor, Jennifer B
Heirman, Wim
Blackburn, Stephen
Eeckhout, Lieven
McKinley, Kathryn
Source :
Parallel Architectures and Compilation Techniques - Conference Proceedings, PACT
Publication Year :
2014

Abstract

Managing the limited resources of power and memory bandwidth while improving performance on multicore hardware is challenging. In particular, more cores demand more memory bandwidth, and multi-threaded applications increasingly stress memory systems, leading to more energy consumption. However, we demonstrate that not all memory traffic is necessary. For modern Java programs, 10 to 60% of DRAM writes are useless, because the data on these lines are dead - the program is guaranteed to never read them again. Furthermore, reading memory only to immediately zero initialize it wastes bandwidth. We propose a software/hardware cooperative solution: the memory manager communicates dead and zero lines with cache scrubbing instructions. We show how scrubbing instructions satisfy MESI cache coherence protocol invariants and demonstrate them in a Java Virtual Machine and multicore simulator. Scrubbing reduces average DRAM traffic by 59%, total DRAM energy by 14%, and dynamic DRAM energy by 57% on a range of configurations. Cooperative software/hardware cache scrubbing reduces memory bandwidth and improves energy efficiency, two critical problems in modern systems.

Details

Database :
OAIster
Journal :
Parallel Architectures and Compilation Techniques - Conference Proceedings, PACT
Notes :
Edmonton, Canada
Publication Type :
Electronic Resource
Accession number :
edsoai.on1291766979
Document Type :
Electronic Resource