Sciweavers

ICS
2000
Tsinghua U.

Automatic loop transformations and parallelization for Java

14 years 3 months ago
Automatic loop transformations and parallelization for Java
From a software engineering perspective, the Java programming language provides an attractive platform for writing numerically intensive applications. A major drawback hampering its widespread adoption in this domain has been its poor performance on numerical codes. This paper describes a prototype Java compiler which demonstrates that it is possible to achieve performance levels approaching those of current state-of-the-art C, C++ and Fortran compilers on numerical codes. We describe a new transformation called alias versioning that takes advantageof the simplicity of pointers in Java. This transformation, combined with other techniques that we have developed, enables the compiler to perform high order loop transformations (for better data locality) and parallelization completely automatically. We believe that our compiler is the first to have such capabilities of optimizing numerical Java codes. We achieve, with Java, between 80 and 100% of the performance of highly optimized Fortra...
Pedro V. Artigas, Manish Gupta, Samuel P. Midkiff,
Added 25 Aug 2010
Updated 25 Aug 2010
Type Conference
Year 2000
Where ICS
Authors Pedro V. Artigas, Manish Gupta, Samuel P. Midkiff, José E. Moreira
Comments (0)