ACM Home Page
Please provide us with feedback. Feedback
Maps: a compiler-managed memory system for raw machines
Full text PdfPdf (232 KB)
Source International Symposium on Computer Architecture archive
Proceedings of the 26th annual international symposium on Computer architecture table of contents
Atlanta, Georgia, United States
Pages: 4 - 15  
Year of Publication: 1999
ISBN:0-7695-0170-2
Also published in ...
Authors
Rajeev Barua  M.I.T. Laboratory for Computer Science, Cambridge, MA
Walter Lee  M.I.T. Laboratory for Computer Science, Cambridge, MA
Saman Amarasinghe  M.I.T. Laboratory for Computer Science, Cambridge, MA
Anant Agarwal  M.I.T. Laboratory for Computer Science, Cambridge, MA
Sponsors
IEEE-CS\TCCA : TC on Computer Arhitecture
SIGARCH: ACM Special Interest Group on Computer Architecture
Publisher
IEEE Computer Society  Washington, DC, USA
Bibliometrics
Downloads (6 Weeks): 8,   Downloads (12 Months): 24,   Citation Count: 19
Additional Information:

abstract   references   cited by   index terms   collaborative colleagues  

Tools and Actions: Review this Article  
DOI Bookmark: Use this link to bookmark this Article: http://doi.acm.org/10.1145/300979.300980
What is a DOI?

ABSTRACT

This paper describes Maps, a compiler managed memory system for Raw architectures. Traditional processors for sequential programs maintain the abstraction of a unified memory by using a single centralized memory system. This implementation leads to the infamous "Von Neumann bottleneck," with machine performance limited by the large memory latency and limited memory bandwidth. A Raw architecture addresses this problem by taking advantage of the rapidly increasing transistor budget to move much of its memory on chip. To remove the bottleneck and complexity associated with centralized memory, Raw distributes the memory with its processing elements. Unified memory semantics are implemented jointly by the hardware and the compiler. The hardware provides a clean compiler interface to its two inter-tile interconnects: a fast, statically schedulable network and a traditional dynamic network. Maps then uses these communication mechanisms to orchestrate the memory accesses for low latency and parallelism while enforcing proper dependence. It optimizes for speed in two ways: by finding accesses that can be scheduled on the static interconnect through static promotion, and by minimizing dependence sequentialization for the remaining accesses. Static promotion is performed using equivalence class unification and modulo unrolling; memory dependences are enforced through explicit synchronization and software serial ordering. We have implemented Maps based on the SUIF infrastructure. This paper demonstrates that the exclusive use of static promotion yields roughly 20-fold speedup on 32 tiles for our regular applications and about 5-fold speedup on 16 or more tiles for our irregular applications. The paper also shows that selective use of dynamic accesses can be a useful complement to the mostly static memory system.


REFERENCES

Note: OCR errors may be found in this Reference List extracted from the full text article. ACM has opted to expose the complete List rather than only correct and linked references.

 
1
2
 
3
4
5
 
6
7
 
8
 
9
10
11
12
13
 
14
M. D. Smith. Extending SUIF for Machine-dependent Optimizations. In Proceedings of the First SUIF Compiler Workshop, pages 14--25, Stanford, CA, Jan. I996.
 
15
16

CITED BY  19

Collaborative Colleagues:
Rajeev Barua: colleagues
Walter Lee: colleagues
Saman Amarasinghe: colleagues
Anant Agarwal: colleagues