Temporal Streaming of Shared Memory
- 1 May 2005
- journal article
- Published by Association for Computing Machinery (ACM) in ACM SIGARCH Computer Architecture News
- Vol. 33 (2), 222-233
- https://doi.org/10.1145/1080695.1069989
Abstract
Coherent read misses in shared-memory multiprocessors account for a substantial fraction of execution time in many important scientific and commercial workloads. We propose Temporal Streaming, to eliminate coherent read misses by streaming data to a processor in advance of the corresponding memory accesses. Temporal streaming dynamically identifies address sequences to be streamed by exploiting two common phenomena in shared-memory access patterns: (1) temporal address correlation - groups of shared addresses tend to be accessed together and in the same order, and (2) temporal stream locality - recently-accessed address streams are likely to recur. We present a practical design for temporal streaming. We evaluate our design using a combination of trace-driven and cycle-accurate full-system simulation of a cache-coherent distributed shared-memory system. We show that temporal streaming can eliminate 98% of coherent read misses in scientific applications, and between 43% and 60% in database and web server workloads. Our design yields speedups of 1.07 to 3.29 in scientific applications, and 1.06 to 1.21 in commercial workloads.Keywords
This publication has 20 references indexed in Scilit:
- SimFlexACM SIGMETRICS Performance Evaluation Review, 2004
- Memory coherence activity prediction in commercial workloadsPublished by Association for Computing Machinery (ACM) ,2004
- Runahead execution: an effective alternative to large instruction windowsIEEE Micro, 2003
- Simics: A full system simulation platformComputer, 2002
- Dynamic hot data stream prefetching for general-purpose programsPublished by Association for Computing Machinery (ACM) ,2002
- Predictor-directed stream buffersPublished by Association for Computing Machinery (ACM) ,2000
- Performance of database workloads on shared-memory systems with out-of-order processorsPublished by Association for Computing Machinery (ACM) ,1998
- Shared memory consistency models: a tutorialComputer, 1996
- Efficient support for irregular applications on distributed-memory machinesPublished by Association for Computing Machinery (ACM) ,1995
- Data forwarding in scalable shared-memory multiprocessorsPublished by Association for Computing Machinery (ACM) ,1995