The Hyperion system: compiling multithreaded Java bytecode for distributed execution

Abstract

Our work combines Java compilation to native code with a run-time library that executes Java threads in a distributed memory environment. This allows a Java programmer to view a cluster of processors as executing a single JAVA virtual machine. The separate processors are simply resources for executing Java threads with true parallelism, and the run-time system provides the illusion of a shared memory on top of the private memories of the processors. The environment we present is available on top of several UNIX systems and can use a large variety of communication interfaces thanks to the high portability of its run-time system. To evaluate our approach, we compare serial C, serial Java, and multithreaded Java implementations of a branch-and-bound solution to the minimal-cost map-coloring problem. All measurements have been carried out on two platforms using two different communication interfaces: SISCI/SCI and MPI-BIP/Myrinet. (C) 2001 Elsevier Science B.V. All rights reserved.

Department

Computer Science

Publication Date

10-1-2001

Journal Title

Parallel Computing

Publisher

ELSEVIER SCIENCE BV

Digital Object Identifier (DOI)

10.1016/S0167-8191(01)00093-X

Document Type

Article

Rights

Copyright © 2001, Elsevier

Share

COinS