Aart Bik's Post-Doc Research

JAVAR - A prototype restructuring compiler for Java

JAVAR is a prototype Java restructuring compiler that can be
used to make implicit parallelism in Java programs explicit
by means of multi-threading. This prototype does
not provide a complete Java front-end (for instance, unicode
escapes are not supported and only some semantic analysis has been
implemented) and relies completely on the identification
of parallelism by means of annotations (automatic detection
is not supported). Nevertheless, the compiler provides hopefully
sufficient functionality to simplify the parallelization of Java programs.
The tool can also generate HTML presentations of Java programs.

JAVAB - A prototype bytecode parallelization tool

JAVAB is a prototype bytecode tool that can automatically
detect and exploit implicit loop parallelism in bytecode,
i.e. the architectural neutral instructions of the JVM. Implicit
parallelism is made explicit by means of the multi-threading mechanism
provided by the JVM. Automatically exploiting implicit
parallelism at bytecode level can be done independently from
the source program and platform from which the bytecode was obtained,
and independently from the platform on which the bytecode eventually
will run. The parallelized bytecode remains architectural neutral
and may exhibit speedup on any platform that supports the true
parallel execution of JVM threads. Note that JAVAB has been
incorporated in the Fortran-to-Java translator
f2j
(Dongarra and Seymour).