Sable Home
Main Page
People
Projects
Publications
Software
Internal
Links
Publications
Papers
Theses
Posters
Reports
Notes
|
Sable Publications (Posters)
McLab: An extensible compiler toolkit for MATLAB and
related languages |
back |
Author: Casey, Andrew and Li, Jun and Doherty, Jesse and Chevalier-Boisvert,
Maxime and Aslam, Toheed and Dubrau, Anton and Lameed, Nurudeen and Aslam,
Amina and Garg, Rahul and Radpour, Soroush and Belanger, Olivier Savary and
Hendren, Laurie and Verbrugge, Clark
Date: May 2010
Summary
MATLAB is a popular language for scientific computation. Effectively
compiling MATLAB presents many challenges due to the dynamic
nature of the language. We present McLab, an extensible
compiler toolkit for the MATLAB and related languages. McLab
aims to provide high performance execution of MATLAB on modern
architectures while bringing modern programming concepts such
as aspect-oriented programming and other extensions to MATLAB.
McLab consists of several components. The first component is an
extensible frontend to parse and analyze MATLAB as well as extensions
to MATLAB. The second component, called McFor, is a
compiler to translate a static subset of MATLAB to FORTRAN. The
third component, McVM, is a virtual machine including a JIT compiler
to execute MATLAB code. Finally we also provide language
extensions such as AspectMatlab. We present the current state of
the implementation of McLab and describe ongoing work and future
directions of the project.
C3S2E10(.pdf)
Software Speculative Multithreading for Java |
back |
Author: Christopher J. F. Pickett
Date: October 2007
Summary
We apply speculative multithreading to sequential Java programs in
software to achieve speedup on existing multiprocessors. A common
speculation library supports both Java bytecode interpreter and JIT
compiler implementations. Initial profiling results indicate three
main optimizations: adaptive return value prediction, online fork
heuristics, and in-order nested method level speculation.
View
the poster (.jpg)
View
the abstract (.pdf)
Adaptive Instruction Cache Optimizations |
back |
Author: Maxime Chevalier-Boisvert
Date: October 2006
Summary
The memory alignment of executable code can have unforeseen effects
on the run-time performance of programs through its influence on instruction
cache operation. This fact has been known for a long time and several
algorithms were devised to optimize the memory layout of compiled code to
maximize instruction cache performance. Most of these use simple heuristics
in order to approximate an optimal solution to this problem, which resembles
an NP-complete packing problem. We take a different approach and
attempt to examine this problem from a new angle, with the aim of better
assessing the true impact of code alignment and the hope of discovering a
more general, more powerful instruction cache optimization algorithm.
View the poster (.pdf)
Visual Conflict Debugger - an Eclipse Plug-in for the Sablecc compiler generator |
back |
Author: Sébastien Adam
Date: October 2004
Summary
We describe a visual debugger for the SableCC compiler generator that aims to simplify
the task of understanding and fixing conflicts in a grammar. In addition, an Eclipse plug-in
illustrates these conflicts with the Eclipse plug-in itself.
View the poster (.pdf)
*J: A Tool for Dymamic Analysis of Java Programs
|
back |
Authors: Bruno Dufour, Laurie Hendren and Clark Verbrugge
Date: October 2003
Summary
We describe a complete system for gathering, computing and presenting dynamic
metrics from Java programs. The system itself was motivated from our real goals
in understanding program behaviour as compiler/runtime developers, and so
solves a number of practical and difficult problems related metrics
gathering and analysis.
View the poster (.pdf)
View the abstract (.pdf)
SPARK: Soot Pointer Analysis Research Kit
|
back |
Author: Ondřej Lhoták
Date: June 2002
Summary
SPARK is a modular toolkit for flow-insensitive may points-to analyses for Java.
The poster describes the capabilities and organization of the framework,
Spark's Pointer Assignment Graph as a representation of pointer
flow, the solver used to compute points-to information, side-effect analysis as an example client analysis, and our native method simulation framework.
Download the poster (.ps.gz)
STOOP: The Sable Toolkit for Object-oriented Profiling
|
back |
Authors: Rhodes Brown, John Jorgensen, Qin Wang, Laurie
Hendren, Karel Driesen, Clark Verbrugge
Date: October 2001
Summary
STOOP is a framework which provides facilities for the rapid
construction of tools to collect and visualize profile data from the
execution of object-oriented programs. The poster describes the three
main components of the framework: profiling agents, the event pipe,
and visualizers.
View the poster (.pdf)
Decompile Java Bytecodes with Soot! |
back |
Authors: Jerome Miecznikowski and Etienne Gagnon
Date: October 2000
Summary
We present a decompiler that converts Java class files back to Java source. Our
work is based on the Soot framework and we concentrate on two essential algorithms: (1) Type
inference for local variables, and (2) Control flow restructuring.
View the poster (.eps)
Download the poster (.eps.gz)
Soot - a Java Bytecode Optimization and Annotation Framework |
back |
Authors: Raja Vallee-Rai, Patrick Lam, Patrice Pominville, Feng Qian, and Laurie Hendren
Date: October 2000
Summary
Soot is an optimization and annotation framework for Java bytecodes. The goal is to produce
class files which execute faster on Java virtual machines as well to annotate the code with
annotation or profiling information which is optionally useful to Java virtual machines.
View the poster (.pdf)
Download the poster (.pdf.gz)
Soot - a Java Bytecode Analysis and Transformation Framework |
back |
Author: Raja Vallee-Rai
Date: November 1998
Summary
This poster gives an overview of the Soot framework. The areas covered are: why
Java is so slow, how to optimize Java, advantages of Soot, Soot's current uses,
and Soot's current status. This poster was presented at CASCON'98.
View the poster (.jpg)
Download the poster (.jpg.gz)
Last updated Thu Dec 19 13:20:19 EST 2002.
|