Impulse: building a smarter memory controller
- 1 January 1999
- conference paper
- Published by Institute of Electrical and Electronics Engineers (IEEE)
Abstract
Impulse is a new memory system architecture that adds two important features to a traditional memory controller. First, Impulse supports application-specific optimizations through configurable physical address remapping. By remapping physical addresses, applications control how their data is accessed and cached, improving their cache and bus utilization. Second, Impulse supports prefetching at the memory controller, which can hide much of the latency of DRAM accesses. In this paper we describe the design of the Impulse architecture, and show how an Impulse memory system can be used to improve the performance of memory-bound programs. For the NAS conjugate gradient benchmark, Impulse improves performance by 67%. Because it requires no modification to processor, cache, or bus designs, Impulse can be adopted in conventional systems. In addition to scientific applications, we expect that Impulse will benefit regularly strided memory-bound applications of commercial importance, such as database and multimedia programs.Keywords
This publication has 19 references indexed in Scilit:
- Improving direct-mapped cache performance by the addition of a small fully-associative cache and prefetch buffersPublished by Institute of Electrical and Electronics Engineers (IEEE) ,2002
- Active Pages: a computation model for intelligent memoryPublished by Institute of Electrical and Electronics Engineers (IEEE) ,2002
- Scalable processors in the billion-transistor era: IRAMComputer, 1997
- The intrinsic bandwidth requirements of ordinary programsPublished by Association for Computing Machinery (ACM) ,1996
- Design and evaluation of dynamic access ordering hardwarePublished by Association for Computing Machinery (ACM) ,1996
- Data prefetching in multiprocessor vector cache memoriesPublished by Association for Computing Machinery (ACM) ,1991
- The cache performance and optimizations of blocked algorithmsPublished by Association for Computing Machinery (ACM) ,1991
- Lightweight remote procedure callPublished by Association for Computing Machinery (ACM) ,1989
- Cache MemoriesACM Computing Surveys, 1982
- The Organization and Use of Parallel MemoriesIEEE Transactions on Computers, 1971