| Compiler driven data layout optimization for regular/irregular array access patterns |
| Full text |
Pdf
(434 KB)
|
Source
|
Language, Compiler and Tool Support for Embedded Systems
archive
Proceedings of the 2008 ACM SIGPLAN-SIGBED conference on Languages, compilers, and tools for embedded systems
table of contents
Tucson, AZ, USA
SESSION: Timing analysis and compiler optimization
table of contents
Pages 41-50
Year of Publication: 2008
ISBN:978-1-60558-104-0
Also published in ...
|
|
Authors
|
|
Doosan Cho
|
EECS/Seoul National University, Seoul, South Korea
|
|
Sudeep Pasricha
|
ICS/Univ. of California Irvine, Irvine, USA
|
|
Ilya Issenin
|
ICS/Univ. of California Irvine, Irvine, USA
|
|
Nikil Dutt
|
ICS/Univ. of California Irvine, Irvine, USA
|
|
Yunheung Paek
|
EECS/Seoul National University, Seoul, South Korea
|
|
SunJun Ko
|
Samsung, Suwon, South Korea
|
|
| Sponsors |
|
| Publisher |
|
| Bibliometrics |
Downloads (6 Weeks): 12, Downloads (12 Months): 179, Citation Count: 0
|
|
|
ABSTRACT
Embedded multimedia applications consist of regular and irregular memory access patterns. Particularly, irregular pattern are not amenable to static analysis for extraction of access patterns, and thus prevent efficient use of a Scratch Pad Memory (SPM) hierarchy for performance and energy improvements. To resolve this, we present a compiler strategy to optimize data layout in regular/irregular multimedia applications running on embedded multiprocessor environments. The goal is to maximize the amount of accesses to the SPM over the entire system which leads to a reduction in the energy consumption of the system. This is achieved by optimizing data placement of application-wide reused data so that it resides in the SPMs of processing elements. Specifically, our scheme is based on a profiling that generates a memory access footprint. The memory access footprint is used to identify data elements with fine granularity that can profitably be placed in the SPMs to maximize performance and energy gains. We present a heuristic approach that efficiently exploits the SPMs using memory access footprint. Our experimental results show that our approach is able to reduce energy consumption by 30% and improve performance by 18% over cache based memory subsystems for various multimedia applications.
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
|
Rajeshwari Banakar , Stefan Steinke , Bo-Sik Lee , M. Balakrishnan , Peter Marwedel, Scratchpad memory: design alternative for cache on-chip memory in embedded systems, Proceedings of the tenth international symposium on Hardware/software codesign, May 06-08, 2002, Estes Park, Colorado
[doi> 10.1145/774789.774805]
|
 |
2
|
M. Kandemir , J. Ramanujam , J. Irwin , N. Vijaykrishnan , I. Kadayif , A. Parikh, Dynamic management of scratch-pad memory space, Proceedings of the 38th conference on Design automation, p.690-695, June 2001, Las Vegas, Nevada, United States
[doi> 10.1145/378239.379049]
|
 |
3
|
|
 |
4
|
|
 |
5
|
|
 |
6
|
|
| |
7
|
|
 |
8
|
Jan Sjödin , Carl von Platen, Storage allocation for embedded processors, Proceedings of the 2001 international conference on Compilers, architecture, and synthesis for embedded systems, November 16-17, 2001, Atlanta, Georgia, USA
[doi> 10.1145/502217.502221]
|
| |
9
|
|
 |
10
|
|
 |
11
|
|
 |
12
|
|
| |
13
|
|
 |
14
|
|
 |
15
|
Samy Meftali , Ferid Gharsalli , Frederic Rousseau , Ahmed A. Jerraya, An optimal memory allocation for application-specific multiprocessor system-on-chip, Proceedings of the 14th international symposium on Systems synthesis, September 30-October 03, 2001, Montréal, P.Q., Canada
[doi> 10.1145/500001.500006]
|
| |
16
|
M. Kandemir and N. Dutt, Memory Systems and Compiler Support for MPSoC Architectures. Morgan Kaufmann, 2005.
|
 |
17
|
Ilya Issenin , Erik Brockmeyer , Bart Durinck , Nikil Dutt, Multiprocessor system-on-chip data reuse analysis for exploring customized memory hierarchies, Proceedings of the 43rd annual conference on Design automation, July 24-28, 2006, San Francisco, CA, USA
[doi> 10.1145/1146909.1146925]
|
| |
18
|
|
| |
19
|
|
| |
20
|
G. Chen , O. Ozturk , M. Kandemir , M. Karakoy, Dynamic scratch-pad memory management for irregular array access patterns, Proceedings of the conference on Design, automation and test in Europe: Proceedings, March 06-10, 2006, Munich, Germany
|
| |
21
|
"Arm advanced micro bus architecture (amba)," ARM. {Online}. Available: http://www.arm.com/products/solutions/AMBAHomePage.html
|
| |
22
|
"Sonics, integration architectures." {Online}. Available: http://www.sonicsinc.com
|
| |
23
|
Michael Gschwind , H. Peter Hofstee , Brian Flachs , Martin Hopkins , Yukio Watanabe , Takeshi Yamazaki, Synergistic Processing in Cell's Multicore Architecture, IEEE Micro, v.26 n.2, p.10-24, March 2006
[doi> 10.1109/MM.2006.41]
|
| |
24
|
W. J. S. H. Yongjoo Kim, Seongnam Kwon and Y. Paek, "An openmp translator with retargetable parallel programming model for mpsoc," in Proc. of Intl. Conf. on Ubiquitous Information Technologies and Applications, 2007.
|
 |
25
|
|
| |
26
|
|
| |
27
|
Chunho Lee , Miodrag Potkonjak , William H. Mangione-Smith, MediaBench: a tool for evaluating and synthesizing multimedia and communicatons systems, Proceedings of the 30th annual ACM/IEEE international symposium on Microarchitecture, p.330-335, December 01-03, 1997, Research Triangle Park, North Carolina, United States
|
| |
28
|
D. C. Burger and T. M. Austin, "The simplescalar tool set, version 2.0," Tech. Rep. CS-TR-1997-1342, 1997.
|
| |
29
|
P. Shivakumar and N. P. Jouppi, "Cacti 3.0: An integrated cache timing, power, and area model."
|
| |
30
|
"128 mbit micron mobile sdram data sheet." Micron Technology Incorporated. {Online}. Available: http://www.micron.com
|
| |
31
|
|
REVIEW
"Michael Zastre : Reviewer"
Memory access patterns on multiprocessor systems-on-chip (MPSoC) are complex enough that they often defeat hardwired caching strategies. Instead of hardwired caches, these systems use scratch pad memory (SPM), acting as a software-controlled cache
more...
|