Sciweavers

IEEEPACT
2009
IEEE

Interprocedural Load Elimination for Dynamic Optimization of Parallel Programs

14 years 6 months ago
Interprocedural Load Elimination for Dynamic Optimization of Parallel Programs
Abstract—Load elimination is a classical compiler transformation that is increasing in importance for multi-core and many-core architectures. The effect of the transformation is to replace a memory access, such as a read of an object field or an array element, by a read of a compiler-generated temporary that can be allocated in faster and more energyefficient storage structures such as registers and local memories (scratchpads). Unfortunately, current just-in-time and dynamic compilers perform load elimination only in limited situations. In particular, they usually make worst-case assumptions about potential side effects arising from parallel constructs and method calls. These two constraints interact with each other since parallel constructs are usually translated to low-level runtime library calls. In this paper, we introduce an interprocedural load elimination algorithm suitable for use in dynamic optimization of parallel programs. The main contributions of the paper include: a)...
Rajkishore Barik, Vivek Sarkar
Added 24 May 2010
Updated 24 May 2010
Type Conference
Year 2009
Where IEEEPACT
Authors Rajkishore Barik, Vivek Sarkar
Comments (0)