| Multi-compilation: capturing interactions among concurrently-executing applications |
| Full text |
Pdf
(223 KB)
|
| Source
|
Conference On Computing Frontiers
archive
Proceedings of the 3rd conference on Computing frontiers
table of contents
Ischia, Italy
SESSION: Compilation and dynamic optimization
table of contents
Pages: 157 - 170
Year of Publication: 2006
ISBN:1-59593-302-6
|
|
Authors
|
|
| Sponsor |
|
| Publisher |
|
| Bibliometrics |
Downloads (6 Weeks): 2, Downloads (12 Months): 14, Citation Count: 0
|
|
|
ABSTRACT
It is well known that while applying a compiler optimization to a large scope of code (e.g., an entire procedure or function) can bring larger benefits in return as compared to smaller scopes (e.g., a nested loop), code analysis and optimization at larger scopes are also more difficult to manage. As of today, the largest scope for a compiler optimization is an entire program source. However, as embedded chip multiprocessor architectures are finding their ways into commercial products, it is becoming important to consider the scenario of multiple applications executing on the same chip multiprocessor. This paper explores a novel technique called multi-compilation where multiple applications that are expected to be executed simultaneously on the same CMP (chip multiprocessor) are compiled together. The benefits of this approach include capturing the interactions amongst applications due to data sharing. While one can think of many potential optimizations that can work in an inter-application fashion exploiting data sharing across applications, we restrict ourselves in this paper to data layout optimization, which is the problem of determining the most suitable memory layout for array data. To demonstrate the impact of our contribution, we implemented our approach and performed a simulation-based study with several embedded applications. Our experimental results show that, by selecting the memory layouts of data arrays considering multiple applications at the same time, we can reduce cache misses by 18.7% and execution cycles by 13.1% 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
|
|
 |
2
|
|
 |
3
|
|
| |
4
|
|
 |
5
|
|
 |
6
|
Somnath Ghosh , Margaret Martonosi , Sharad Malik, Precise miss analysis for program transformations with caches of arbitrary associativity, Proceedings of the eighth international conference on Architectural support for programming languages and operating systems, p.228-239, October 02-07, 1998, San Jose, California, United States
|
 |
7
|
|
| |
8
|
IBM Cell Processor. http://www-1.ibm.com/businesscenter/venturedevelopment/us/en/featurearticle/gcl_xmlid/8649/nav_id/emerging
|
| |
9
|
I. Kadayif, M. Kandemir, and U. Sezer. Collective compilation for I/O-intensive programs. In Proc. IASTED International Conference on Parallel and Distributed Computing and Systems, August 2001, Anaheim.
|
| |
10
|
|
| |
11
|
M. Kandemir , A. Choudhary , J. Ramanujam , P. Banerjee, Improving locality using loop and data transformations in an integrated framework, Proceedings of the 31st annual ACM/IEEE international symposium on Microarchitecture, p.285-297, November 1998, Dallas, Texas, United States
|
 |
12
|
|
 |
13
|
Induprakas Kodukula , Nawaaz Ahmed , Keshav Pingali, Data-centric multi-level blocking, Proceedings of the ACM SIGPLAN 1997 conference on Programming language design and implementation, p.346-357, June 16-18, 1997, Las Vegas, Nevada, United States
|
 |
14
|
Monica D. Lam , Edward E. Rothberg , Michael E. Wolf, The cache performance and optimizations of blocked algorithms, Proceedings of the fourth international conference on Architectural support for programming languages and operating systems, p.63-74, April 08-11, 1991, Santa Clara, California, United States
|
| |
15
|
|
 |
16
|
|
| |
17
|
|
| |
18
|
M. O'Boyle and P. Knijnenburg. Non-singular data transformations: Definition, validity, applications. In Proc. Workshop on Compilers for Parallel Computers, pages 287--297, Aachen, Germany, 1996.
|
| |
19
|
|
 |
20
|
|
| |
21
|
SimpleScalar LLC. http://www.simplescalar.com
|
| |
22
|
Througput Computing. http://www.sun.com/processors/throughput/faqs.html
|
 |
23
|
|
| |
24
|
|
|