With most of today's fast scientific software written in Fortran and C, Java has a lot of catching up to do. In this paper we discuss how new Java programs can capitalize on highperformance libraries for other languages. With the help of a tool we have automatically created Java bindings for several
Automatically exploiting implicit parallelism in Java
โ Scribed by Bik, Aart J. C.; Gannon, Dennis B.
- Publisher
- John Wiley and Sons
- Year
- 1997
- Tongue
- English
- Weight
- 287 KB
- Volume
- 9
- Category
- Article
- ISSN
- 1040-3108
No coin nor oath required. For personal study only.
โฆ Synopsis
In this paper we show how implicit parallelism in Java programs can be made explicit by a restructuring compiler using the multi-threading mechanism of the language. In particular, we focus on automatically exploiting implicit parallelism in loops and multi-way recursive methods. Expressing parallelism in Java itself clearly has the advantage that the transformed program remains portable. After compilation of the transformed Java program into byte-code, speedup can be obtained on any platform on which the Java byte-code interpreter supports the true parallel execution of threads. Moreover, we will see that the transformations presented in this paper only induce a slight overhead on uni-processors.
๐ SIMILAR VOLUMES
We present a generic matrix class facility in Java and an on-going project for a runtime environment with continuous compilation aiming to support automatic parallelization of sparse computation on distributed environments. Our package comes with a collection of matrix classes with a uniform interfa
The JPVM library is a software system for explicit message-passing-based parallel programming in Java. The library supports an interface similar to the C and Fortran interface of the parallel virtual machine (PVM) system, with modifications to better suit Java programming styles. The similarity betw
A useful discrete-event simulation environment should support component-level reuse, integration of graphical tools, and scalable performance. The JTED framework (http://www.cooperate.com/JTED) demonstrates that Java can serve as the basis for constructing very large models that achieve these goals.