ACM Home Page
Please provide us with feedback. Feedback
Programming the FlexRAM parallel intelligent memory system
Full text PdfPdf (256 KB)
Source Principles and Practice of Parallel Programming archive
Proceedings of the ninth ACM SIGPLAN symposium on Principles and practice of parallel programming table of contents
San Diego, California, USA
SESSION: Software for parallel architectures table of contents
Pages: 49 - 60  
Year of Publication: 2003
ISBN:1-58113-588-2
Also published in ...
Authors
Basilio B. Fraguela  Universidade da Coruña, Spain
Jose Renau  University of Illinois at Urbana-Champaign, USA
Paul Feautrier  LIP, Ecole Normale Supérieure de Lyon, France
David Padua  University of Illinois at Urbana-Champaign, USA
Josep Torrellas  University of Illinois at Urbana-Champaign, USA
Sponsors
SIGPLAN: ACM Special Interest Group on Programming Languages
ACM: Association for Computing Machinery
Publisher
ACM  New York, NY, USA
Bibliometrics
Downloads (6 Weeks): 3,   Downloads (12 Months): 26,   Citation Count: 2
Additional Information:

abstract   references   cited by   index terms   collaborative colleagues  

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

ABSTRACT

In an intelligent memory architecture, the main memory of a computer is enhanced with many simple processors. The result is a highly-parallel, heterogeneous machine that is able to exploit computation in the main memory. While several instantiations of this architecture have been proposed, the question of how to effectively program them with little effort has remained a major challenge.In this paper, we show how to effectively hand-program an intelligent memory architecture at a high level and with very modest effort. We use FlexRAM as a prototype architecture. To program it, we propose a family of high-level compiler directives inspired by OpenMP called CFlex. Such directives enable the processors in memory to execute the program in cooperation with the main processor. In addition, we propose libraries of highly-optimized functions called Intelligent Memory Operations (IMOs). These functions program the processors in memory through CFlex, but make them completely transparent to the programmer. Simulation results show that, with CFlex and IMOs, a server with 64 simple processors in memory runs on average 10 times faster than a conventional server. Moreover, a set of conventional programs with 240 lines on average are transformed into CFlex parallel form with only 7 CFlex directives and 2 additional statements on average.


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
R. Barrett, M. Berry, T. Chan, J. Demmel, J. Donato, J. Dongarra, V. Eijkhout, R. Pozo, C. Romine, and H. van~der Vorst. Templates for the Solution of Linear Systems: Building Blocks for Iterative Methods. SIAM Press, 1994.
 
2
J. Chame, J. Shin, and M. Hall. Code Transformations for Exploiting Bandwidth in PIM-Based Systems. In Solving the Memory Wall Problem Workshop, June 2000.
 
3
K. Diefendorff. Power4 Focuses on Memory Bandwith. Microprocessor Report, 13(13), October 1999.
 
4
 
5
B. Fraguela, J. Renau, P. Feautrier, D. Padua, and J. Torrellas. CFlex: A Programming Language for the FlexRAM Intelligent Memory Architecture. Technical Report UIUCDCS-R-2002-2287, Department of Computer Science, University of Illinois at Urbana-Champaign, July 2002.
6
 
7
 
8
High Performance Fortran Forum. High Performance Fortran Language Specification, Version 2.0. 1997.
 
9
 
10
 
11
 
12
13
 
14
OpenMP Architecture Review~Board. OpenMP C and C++ Application Program Interface Version 2.0. March 2002.
15
16
 
17
 
18
A. A. Stepanov and M. Lee. The Standard Template Library. Technical Report X3J16/94-0095, WG21/N0482, ISO Programming Language C++ Project, May 1994.
 
19
 
20
21
 
22
S. Yoo, J. Renau, M. Huang, and J. Torrellas. FlexRAM Architecture Design Parameters. Technical Report CSRD-1584, Department of Computer Science, University of Illinois at Urbana Champaign, October 2000. http://iacoma.cs.uiuc.edu/papers.html.


Collaborative Colleagues:
Basilio B. Fraguela: colleagues
Jose Renau: colleagues
Paul Feautrier: colleagues
David Padua: colleagues
Josep Torrellas: colleagues