Automatic Loop Transformations and Parallelization for Java.

Saved in:
Bibliographic Details
Title: Automatic Loop Transformations and Parallelization for Java.
Authors: Artigas, Pedro V., Gupta, Manish, Mikiff, Samuel P., Moreira, José E., Darte, A., Robert, Y.
Source: Parallel Processing Letters. Jun-Sep2000, Vol. 10 Issue 2/3, p153. 12p.
Subject Terms: *COMPILERS (Computer programs), *LOOP tiling (Computer science), *PARALLEL processing
Abstract: This paper describes a prototype Java compiler that achieves performance levels approaching those of current state-of-the-art Fortran compilers on numerical codes. We present a new transformation called alias versioning that takes advantage of 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 and parallelization completely automatically. We believe that our compiler is the first to have such capabilities of optimizing numerical Java codes. By exploiting synergies between our compiler and the Array package for Java, we achieve between 80 and 100% of the performance of highly optimized Fortran code in a variety of benchmarks. Furthermore, automatic parallelization achieves speedups of up to 3.8 on four processors. Our compiler technology makes Java a serious contender for implementing numerical applications. [ABSTRACT FROM AUTHOR]
Database: Academic Search Index
Description
Abstract:This paper describes a prototype Java compiler that achieves performance levels approaching those of current state-of-the-art Fortran compilers on numerical codes. We present a new transformation called alias versioning that takes advantage of 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 and parallelization completely automatically. We believe that our compiler is the first to have such capabilities of optimizing numerical Java codes. By exploiting synergies between our compiler and the Array package for Java, we achieve between 80 and 100% of the performance of highly optimized Fortran code in a variety of benchmarks. Furthermore, automatic parallelization achieves speedups of up to 3.8 on four processors. Our compiler technology makes Java a serious contender for implementing numerical applications. [ABSTRACT FROM AUTHOR]
ISSN:01296264
DOI:10.1142/S0129626400000160