| Bee+Cl@k: an implementation of lattice-based array contraction in the source-to-source translator rose |
| Full text |
Pdf
(382 KB)
|
Source
|
Language, Compiler and Tool Support for Embedded Systems
archive
Proceedings of the 2007 ACM SIGPLAN/SIGBED conference on Languages, compilers, and tools for embedded systems
table of contents
San Diego, California, USA
SESSION: Source-level analysis
table of contents
Pages: 73 - 82
Year of Publication: 2007
ISBN:978-1-59593-632-5
Also published in ...
|
|
Authors
|
|
Christophe Alias
|
LIP: CNRS - ENS Lyon - UCB Lyon - INRIA, Lyon, France
|
|
Fabrice Baray
|
LIP: CNRS - ENS Lyon - UCB Lyon - INRIA, Lyon, France
|
|
Alain Darte
|
LIP: CNRS - ENS Lyon - UCB Lyon - INRIA, Lyon, France
|
|
| Sponsors |
|
| Publisher |
|
| Bibliometrics |
Downloads (6 Weeks): 3, Downloads (12 Months): 33, Citation Count: 0
|
|
|
ABSTRACT
We build on prior work on intra-array memory reuse, for which a general theoretical framework was proposed based on lattice theory. Intra-array memory reuse is a way of reducing the size of a temporary array by folding, thanks to affine mappings and modulo operations, reusing memory locations when they contain a value not used later. We describe the algorithms needed to implement such a strategy. Our implementation has two parts. The first part, Bee, uses the source-to-source transformer ROSE to extract from the program all necessary information on the lifetime of array elements and to generate the code after memory reduction. The second part, Cl@k, is a stand-alone mathematical tool dedicated to optimizations on polyhedra, in particular the computation of successive minima and the computation of good admissible lattices, which are the basis for lattice-based memory reuse. Both tools are developed in C++ and use linear programming and polyhedra manipulations. They can be used either for embedded program optimizations, e.g., to limit memory expansion introduced for parallelization, or in high-level synthesis, e.g., to design memories between communicating hardware accelerators.
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
|
Florin Balasa , Francky Catthoor , Hugo de Man, Exact evaluation of memory size for multi-dimensional signal processing systems, Proceedings of the 1993 IEEE/ACM international conference on Computer-aided design, p.669-672, November 07-11, 1993, Santa Clara, California, United States
|
| |
2
|
F. Balasa , P. G. Kjeldsberg , M. Palkovic , A. Vandecappelle , F. Catthoor, Loop Transformation Methodologies for Array-Oriented Memory Management, Proceedings of the IEEE 17th International Conference on Application-specific Systems, Architectures and Processors (ASAP'06), p.205-212, September 11-13, 2006
[doi> 10.1109/ASAP.2006.42]
|
| |
3
|
P. Clauss, F.J. Fernandez, D. Gabervetsky, and S. Verdoolaege. Symbolic polynomial maximization over convex sets and its application to memory requirement estimation. T.R. ICPS number 06-04, Université L. Pasteur, Oct. 2006.
|
 |
4
|
Jean-François Collard , Denis Barthou , Paul Feautrier, Fuzzy array dataflow analysis, Proceedings of the fifth ACM SIGPLAN symposium on Principles and practice of parallel programming, p.92-101, July 19-21, 1995, Santa Barbara, California, United States
|
| |
5
|
|
 |
6
|
Alain Darte , Rob Schreiber , Gilles Villard, Lattice-based memory allocation, Proceedings of the 2003 international conference on Compilers, architecture and synthesis for embedded systems, October 30-November 01, 2003, San Jose, California, USA
[doi> 10.1145/951710.951749]
|
| |
7
|
|
| |
8
|
|
| |
9
|
P. Feautrier. Parametric integer programming. RAIRO Recherche Opérationnelle, 22(3):243--268, 1988.
|
| |
10
|
P. Feautrier. Data flow analysis of scalar and array references. International Journal of Parallel Programming, 20(1):23--53, 1991.
|
| |
11
|
GNU Free Software. GLPK (GNU Linear Programming Kit). http://www.gnu.org/software/glpk.
|
| |
12
|
P.M. Gruber and C.G. Lekkerkerker. Geometry of Numbers. North Holland, second edition, 1987.
|
| |
13
|
Vinod Kathail , Shail Aditya , Robert Schreiber , B. Ramakrishna Rau , Darren C. Cronquist , Mukund Sivaraman, PICO: Automatically Designing Custom Computers, Computer, v.35 n.9, p.39-47, September 2002
[doi> 10.1109/MC.2002.1033026]
|
| |
14
|
|
| |
15
|
|
| |
16
|
M. Newman. Integral Matrices. Academic Press, 1972.
|
| |
17
|
PIP/Polylib: http://www.piplib.org.
|
 |
18
|
|
 |
19
|
|
| |
20
|
D.J. Quinlan. ROSE: Compiler support for object-oriented frameworks. Parallel Proc. Letters, 10(2/3):215--226, 2000.
|
 |
21
|
J. Ramanujam , Jinpyo Hong , Mahmut Kandemir , A. Narayan, Reducing memory requirements of nested loops for embedded systems, Proceedings of the 38th conference on Design automation, p.359-364, June 2001, Las Vegas, Nevada, United States
[doi> 10.1145/378239.378523]
|
| |
22
|
|
| |
23
|
|
 |
24
|
Michelle Mills Strout , Larry Carter , Jeanne Ferrante , Beth Simon, Schedule-independent storage mapping for loops, Proceedings of the eighth international conference on Architectural support for programming languages and operating systems, p.24-33, October 02-07, 1998, San Jose, California, United States
|
 |
25
|
William Thies , Frédéric Vivien , Jeffrey Sheldon , Saman Amarasinghe, A unified framework for schedule and storage optimization, Proceedings of the ACM SIGPLAN 2001 conference on Programming language design and implementation, p.232-242, June 2001, Snowbird, Utah, United States
|
| |
26
|
Remko Tronçon , Maurice Bruynooghe , Gerda Janssens , Francky Catthoor, Storage Size Reduction by In-place Mapping of Arrays, Revised Papers from the Third International Workshop on Verification, Model Checking, and Abstract Interpretation, p.167-181, January 21-22, 2002
|
 |
27
|
Alexandru Turjan , Bart Kienhuis , Ed Deprettere, Translating affine nested-loop programs to process networks, Proceedings of the 2004 international conference on Compilers, architecture, and synthesis for embedded systems, September 22-25, 2004, Washington DC, USA
[doi> 10.1145/1023833.1023864]
|
 |
28
|
|
| |
29
|
S. Verdoolaege, H. Nikolov, and T. Stefanov. Improved derivation of process networks. In Workshop on Opt. for DSP and Embedded Systems (ODES-4), Mar. 2006.
|
 |
30
|
|
 |
31
|
|
| |
32
|
|
|