Nano-Pattern Detection Tool
Nano-patterns are simple boolean properties of
Java methods, such
as
returnsVoid and
containsLoop.
Our ENTCS paper
[here]
[preprint]
has more details.
This project is now hosted at
github.
You can also download the nano-pattern detector tool here, as a
jar file. (Run as
java -jar np.jar CLASSFILE.)
The code relies on the
ASM bytecode manipulation library.
Nano-patterns were inspired by Gil and Maman's
micro-patterns
for Java classes.
Einar Host has taken these
ideas much further, in his excellent research papers.
Jikes RVM Extensions
Much of my research into memory management and managed runtime systems
is based on the
Jikes RVM platform.
Some of my code is in the
official Jikes RVM
distribution. More experimental code
is stored in the Research Archive,
here
and
here
.
Java Fork/Join Concordance Application
This is my entry to the
SICSA
multicore challenge
workshop.
The application creates a concordance for a text file, giving the indices of all phrases of length <= N. The parallelism is generated using Doug Lea's
Java fork/join library.
The code is hosted at
sicsaconcordance.googlecode.com.
GCBench for Standard ML
In my work with the
Poly/ML
runtime system,
I have used Hans Boehm's
GC benchmark.
I ported a variant of
this code to SML:
gcbench.sml