Publications

Below is a list of publications that use Jikes RVM. This list includes both papers written by Jikes RVM developers, as well as users of the system. We strongly encourage authors to utilize the Research Archive to publish source code used in their studies, and thus, allow others to build on their results. When the implementation described in a paper is available in a Jikes RVM release, this is noted with the paper. Information of dissertations relating to the Jikes RVM is available here. If you would like to see a paper listed then please send details to the RVM researchers mailing list.

2012

The Design and Construction of High Performance Garbage Collectors

  • Robin Garner
  • PhD Thesis, Australian National University

Work-Stealing Without The Baggage

  • Vivek Kumar, Daniel Frampton, Stephen M. Blackburn, David Grove, Olivier Tardieu
  • ACM SIGPLAN Conference on Object-Oriented Programming, Systems, Languages, and Applications, Tuscon AZ, October 2012

A Black-box Approach to Understanding Concurrency in DaCapo

  • Tomas Kalibera, Matthew Mole, Richard Jones and Jan Vitek
  • ACM SIGPLAN Conference on Object-Oriented Programming, Systems, Languages, and Applications, Tuscon AZ, October 2012

Down for the Count? Getting Reference Counting Back in the Ring

  • R. Shahriyar, S. M. Blackburn, and D. Frampton
  • ACM SIGPLAN International Symposium on Memory Management, ISMM ‘12, Beijing, China, June 15-16, 2012
  • Source code available in the Jikes RVM repository as of August 2012 (see RVM-979)

Barriers Reconsidered: Friendlier Still!

  • Xi Yang, Stephen M. Blackburn, Daniel Frampton, Antony L. Hosking
  • ACM SIGPLAN International Symposium on Memory Management, ISMM'12, Beijing, China, June 15-16, 2012

2011

Fine-Grained Adaptive Biased Locking

  • Filip Pizlo, Daniel Frampton, Antony L. Hosking
  • 9th International Conference on Principles and Practice of Programming in Java, Kongens Lyngby, Denmark, August 24-26, 2011

SOS: Saving Time in Dynamic Race Detection with Stationary Analysis

  • D. Li, W. Srisa-an, and M. Dwyer
  • ACM SIGPLAN Conference on Object-Oriented Programming, Systems, Languages, and Applications (OOPSLA), Portland, Oregon, USA, October 22-27, 2011

A Literate Experimentation Manifesto

  • J. Singer
  • ACM SIGPLAN Symposium on New Ideas, New Paradigms, and Reflections on Programming and Software (ONWARD), Portland, Oregon, USA, October 22-27, 2011

Quarantine: A Framework to Mitigate Memory Errors in JNI Applications

  • D. Li and W. Srisa-an
  • ACM Conference on Principles and Practice of Programming in Java (PPPJ), Kongens Lyngby, Denmark, August 24-26, 2011

A Comprehensive Evaluation of Object Scanning Techniques

  • R. Garner, S. M. Blackburn and D. Frampton
  • ACM SIGPLAN International Symposium on Memory Management (ISMM), San Jose, CA, USA, June 2011

LeakChaser: Helping Programmers Narrow Down Causes of Memory Leaks

  • G. Xu, M. D. Bond, F. Qin, and A. Rountev
  • ACM SIGPLAN Conference on Programming Language Design and Implementation (PLDI), San Jose, CA, USA, June 2011
  • Source code available on the Research Archive

2010

Hera-JVM: A System for Heterogeneous Multi-Core Architectures

  • R. McIlroy and J. Sventek.
  • ACM SIGPLAN Conference on Object-Oriented Programming, Systems, Languages, and Applications, Reno/Tahoe, Nevada, October, 2010

An Input-Centric Paradigm for Program Dynamic Optimizations

  • K. Tian, Y. Jiang, E. Zhang, X. Shen
  • ACM SIGPLAN Conference on Object-Oriented Programming, Systems, Languages, and Applications, Reno/Tahoe, Nevada, October, 2010

What Can the GC Compute Efficiently? A Language for Heap Assertions at GC Time

  • C. Reichenbach, E. Aftandilian, N. Immerman, S. Guyer, and Y. Smaragdakis
  • ACM SIGPLAN Conference on Object-Oriented Programming, Systems, Languages, and Applications, Reno/Tahoe, Nevada, October, 2010

Local redundant polymorphism query elimination

Z-Rays: Divide Arrays and Conquer Speed and Flexibility

  • J. Sartor, S. M. Blackburn, D. Frampton, M. Hirzel, and K. S. McKinley
  • ACM SIGPLAN Conference on Programming Language Design and Implementation (PLDI), Toronto, Canada, June 2010
  • Source code available here

Pacer: Proportional Detection of Data Races

  • M. D. Bond, K. E. Coons, and K. S. McKinley
  • ACM SIGPLAN Conference on Programming Language Design and Implementation (PLDI), Toronto, Canada, June 2010
  • Source code available on the Research Archive

Breadcrumbs: Efficient Context Sensitivity for Dynamic Bug Detection Analyses

  • M. D. Bond, G. Z. Baker, and S. Z. Guyer
  • ACM SIGPLAN Conference on Programming Language Design and Implementation (PLDI), Toronto, Canada, June 2010
  • Source code available on the Research Archive

The Locality of Concurrent Write Barriers

  • L. Hellyer, R.E. Jones and A.L. Hosking
  • ACM SIGPLAN International Symposium on Memory Management (ISMM), Toronto, Canada, June 2010

The Economics of Garbage Collection

  • J. Singer, R.E. Jones, G. Brown and M. Lujan
  • ACM SIGPLAN International Symposium on Memory Management (ISMM), Toronto, Canada, June 2010

Efficient, Context-Sensitive Detection of Real-World Semantic Attacks

  • M. D. Bond, V. Srivastava, K. S. McKinley, and V. Shmatikov
  • ACM SIGPLAN Workshop on Programming Languages and Analysis for Security (PLAS), Toronto, Canada, June 2010
  • Source code available on the Research Archive

Automated just-in-time compiler tuning

2009

GC Assertions: Using the Garbage Collector to Check Heap Properties

  • E. Aftandilian and S. Guyer
  • ACM SIGPLAN Conference on Programming Language Design and Implementation (PLDI), Dublin, Ireland, June 2009.

An Experimental Study of Methods for Executing Test Suites in Memory Constrained Environments

  • Suvarshi Bhadra, Alexander Conrad, Charles Hurkes, Brian Kirklin, and Gregory M. Kapfhammer
  • In the Proceedings of the 4th Workshop on the Automation of Software Test, Vancouver, Canada, May 2009.

Demystifying Magic: High-level Low-level Programming

  • Frampton, Blackburn, Cheng, Garner, Grove, Moss, and Salishev.
  • VEE 2009.

Flexible Reference-Counting-Based Hardware Acceleration for Garbage Collection

  • Jose A. Joao, Onur Mutlu, and Yale N. Patt
  • International Symposium on Computer Architecture (ISCA), Austin, TX, June 2009

Laminar: Practical Fine-Grained Decentralized Information Flow Control

Leak Pruning

The Impact of Java Applications at Microarchitectural Level from Branch Prediction Perspective

  • Adrian Florea, Arpad Gellert, Lucian Vințan, Marius Velțan.
  • International Journal of Computers, Communication and Control

Mostly-Functional Behavior in Java Programs

  • William C. Benton, Charles N. Fischer
  • Proceedings of the Tenth International Conference on Verification, Model Checking, and Abstract Interpretation (VMCAI '09). Savannah, Georgia, USA 18-20 January 2009.

2008

Tolerating Memory Leaks

Java Performance Evaluation through Rigorous Replay Compilation

Constraint Based Optimization of Stationary Fields

The PIM: an Innovative Robot Coordination Model based on Java Thread Migration

A Lazy Developer Approach: Building a JVM with Third Party Software

Speculative Improvements to Verifiable Bounds Check Elimination

Wake Up and Smell the Coffee: Evaluation Methodology for the 21st Century

  • Stephen M. Blackburn, Kathryn S. McKinley, Robin Garner, Chris Hoffmann, Asjad M. Khan, Rotem Bentzur, Amer Diwan, Daniel Feinberg, Daniel Frampton, Samuel Z. Guyer, Martin Hirzel, Antony Hosking, Maria Jump, Han Lee, J. Eliot, B. Moss, Aashish Phansalkar, Darko Stefanović, Thomas VanDrunen, Daniel von Dincklage, Ben Wiedermann.
  • Communications of the ACM (CACM), pages 83-89, August 2008.

Speculative Multithreading: An Object-Driven Approach

No Bit Left Behind: The Limits of Heap Data Compression

  • J.B. Sartor, M. Hirzel, and K.S. McKinley
  • The 2008 International Symposium on Memory Management. Tucson, AZ, June 2008.

Immix: A Mark-Region Garbage Collector with Space Efficiency, Fast Collection, and Mutator Performance

  • Stephen Blackburn and Kathryn McKinley
  • ACM SIGPLAN Conference on Programming Language Design and Implementation (PLDI 2008), Tucson, AZ, June 7-13, 2008
  • Patch against r13767 here. Code being integrated into svn head April-May 2008.

Adaptive Loop Tiling for a Multi-Cluster CMP

A Study of Java Object Demographics

  • Richard Jones and Chris Ryder
  • International Symposium on Memory Management, Tucson, AZ, June 7-8, 2008

Phase-based Adaptive Recompilation in a JVM

Branch-on-Random

A Method Specialisation and Virtualised Execution Environment for Java

  • A.M. Cheadle, A.J. Field and J. Nystrom-Persson
  • Fourth ACM SIGPLAN/SIGOPS international conference on Virtual Execution Environments (VEE), Seattle, Washington, USA, 5-7 March, 2008

Dynamic Analysis of Java Program Concepts for Visualization and Profiling

  • Jeremy Singer and Chris Kirkham
  • Science of Computer Programming, vol. 70, no.2-3, pp.111-126, Elsevier, Feb 2008.

Object Co-location and Memory Reuse for Java Programs

  • Zoe C. H. Yu, Francis C. M. Lau, and Cho-Li Wang
  • ACM Transactions on Architecture and Code Optimization, Vol. 4, No. 4, Article 23, January 2008.

2007

Effective Prefetch for Mark-Sweep Garbage Collection

  • Robin Garner, Stephen Blackburn, & Daniel Frampton
  • ACM SIGPLAN International Symposium on Memory Management (ISMM), Montreal, October 2007
  • Patch against Jikes RVM r10327 available here.

Decrypting the Java Gene Pool: Predicting Object Lifetimes with Micro-Patterns

Uniqueness Inference for Compile-Time Object Deallocation

  • Sigmund Cherem & Radu Rugina
  • ACM SIGPLAN International Symposium on Memory Management (ISMM), Montreal, October 2007

Statistically Rigorous Java Performance Evaluation

Using HPM-Sampling to Drive Dynamic Compilation

Intelligent Selection of Application-Specific Garbage Collectors

Probabilistic Calling Context

Tracking Bad Apples: Reporting the Origin of Null and Undefined Value Errors

Java Object Header Elimination for Reduced Memory Consumption in 64-Bit Virtual Machines

Optimizing Chip Multiprocessor Work Distribution using Dynamic Compilation

  • Jisheng Zhao, Matthew Horsnell, Ian Rogers, Andrew Dinn, Chris Kirkham, Ian Watson.
  • Proceedings of  Euro-Par, IRISA/ENS Cachan, Rennes, France, 28-31 August 2007

GCH: Hints for Triggering Garbage Collections

Object-Relative Addressing: Compressed Pointers in 64-Bit Java Virtual Machines

Fast Online Pointer Analysis

  • Martin Hirzel, Daniel von Dincklage, Amer Diwan, and Michael Hind.
  • Transactions on Programming Languages and Systems (TOPLAS), April 2007.

Correcting the Dynamic Call Graph Using Control Flow Constraints

Isla Vista Heap Sizing: Using Feedback to Avoid Paging

  • Chris Grzegorczyk, Sunil Soman, Chandra Krintz, Rich Wolski
  • Proceedings of the 5th International Symposium on Code Generation and Optimization (CGO 2007), San Jose, California, March 2007

Transactional Collection Classes

  • Brian D. Carlstrom, Austen McDonald, Michael Carbin, Christos Kozyrakis, Kunle Olukotun (Stanford University)
  • Principles and Practice of Parallel Computing (PPoPP 2007), San Jose, California, 15 March 2007.

A Scalable, Non-blocking Approach to Transactional Memory

  • H. Chafi, J. Casper, B. D. Carlstrom, A. McDonald, C. Cao Minh, W. Baek, C. Kozyrakis, and K. Olukotun (Stanford University)
  • The 13th International Symposium on High-Performance Computer Architecture (HPCA), Phoenix, Arizona, February 10-14, 2007.

Mobility of Data in Distributed Hybrid Computing Systems

  • Philippe Faes, Mark Christiaens and Dirk Stroobandt
  • Proceedings of the 21st International Parallel and Distributed Processing Symposium, 2007

Transactional Memory: The Hardware-Software Interface

  • Austen McDonald, Brian D. Carlstrom, JaeWoong Chung, Chi Cao Minh, Hassan Chafi, Christos Kozyrakis, Kunle Olukotun
  • Micro's Top Picks, IEEE Micro January/February 2007 (Vol. 27, No. 1).

Cork: Dynamic Memory Leak Detection for Java

2006

Lazy Interprocedural Analysis for Dynamic Loop Parallelization

  • Jisheng Zhao, Chris Kirkham, Ian Rogers
  • New Horizons in Compilers, Bangalore, India, December 18, 2006.

Leveraging strong agent mobility for Aglets with the Mobile JikesRVM framework

  • Raffaele Quitadamo, Letizia Leonardi, Giacomo Cabri
  • Scalable Computing: Practice and Experience, ISSN: 1895-1767, Volume 7, No. 4, December 2006.

Executing Java programs with transactional memory

  • Brian D. Carlstrom, JaeWoong Chung, Hassan Chafi, Austen McDonald, Chi Cao Minh, Lance Hammond, Christos Kozyrakis, Kunle Olukotun
  • Science of Computer Programming, Volume 63, Issue 2, 1 December 2006, Pages 111-129.

CRAMM: Virtual Memory Support for Garbage-Collected Applications

Revocation techniques for Java concurrency

  • Welc A, Jagannathan S and Hosking AL.
  • Concurrency and Computation - Practice and Experience 18(2):1613-1656, October 2006.

JAVANA: A System for Building Customized Java Program Analysis Tools

  • Jonas Maebe, Dries Buytaert, Lieven Eeckhout, Koen De Bosschere
  • ACM Conference on Object-Oriented Programming, Systems, Languages, and Applications (OOPSLA), Portland, Oregon, October 22-26, 2006.

The DaCapo Benchmarks: Java Benchmarking Development and Analysis

  • Stephen M Blackburn, Robin Garner, Chris Hoffmann, Asjad M Khan, Kathryn S. McKinley, Rotem Bentzur, Amer Diwan, Daniel Feinberg, Daniel Frampton, Samuel Z. Guyer, Martin Hirzel, Antony Hosking, Maria Jump, Han Lee, J. Eliot B. Moss, Aashish Phansalkar, Darko Stefanovic, Thomas VanDrunen, Daniel von Dincklage, Benjamin Wiedermann
  • ACM Conference on Object-Oriented Programming, Systems, Languages, and Applications (OOPSLA), Portland, Oregon, October 22-26, 2006.

Method-Specific Dynamic Compilation using Logistic Regression

  • John Cavazos, Michael O'Boyle
  • ACM Conference on Object-Oriented Programming, Systems, Languages, and Applications (OOPSLA), Portland, Oregon, October 22-26, 2006.

Adapting VM Techniques for Seamless Aspect Support

  • Christoph Bockisch, Matthew Arnold, Tom Dinkelaker, Mira Mezini
  • ACM Conference on Object-Oriented Programming, Systems, Languages, and Applications (OOPSLA), Portland, Oregon, October 22-26, 2006.

Efficient Control Flow Quantification

  • Christoph Bockisch, Sebastian Kanthak, Michael Haupt, Matthew Arnold, Mira Mezini,
  • ACM Conference on Object-Oriented Programming, Systems, Languages, and Applications (OOPSLA), Portland, Oregon, October 22-26, 2006.

Bell: Bit-Encoding Online Memory Leak Detection

Trace-based automatic parallelization in the Jikes RVM

Enabling Java Mobile Computing on the IBM Jikes Research Virtual Machine

Transparently reconciling transactions with locking for Java synchronization

  • Welc A, Hosking AL, Jagannathan S.
  • Proceedings of the 20th European Conference on Object-Oriented Programming (ECOOP):148-173 (Nantes, France, July 2006), Lecture Notes in Computer Science 4067, Springer-Verlag, 2006.

Architectural Semantics for Practical Transactional Memory

Relative Factors in Performance Analysis of JVMs

  • Dayong Gu, Clark Verbrugge, and Etienne M. Gagnon
  • ''Proceedings of the 2nd Annual International Conference on Virtual Execution Environments'', Ottawa, Canada, June 14-16, 2006.

Impact of Virtual Execution Environments on Processor Energy Consumption and Hardware Adaptation

  • Shiwen Hu and Lizy K. John
  • ''Proceedings of the 2nd Annual International Conference on Virtual Execution Environments'', Ottawa, Canada, June 14-16, 2006.

Free-Me: A Static Analysis for Automatic Individual Object Reclamation

  • Samuel Z. Guyer, Kathryn S. McKinley, and Daniel Frampton.
  • ''Proceedings of the ACM SIGPLAN 2006 Conference on Programming Language Design and Implementation'', Ottawa, Canada, June 10-16, 2006.

The Compressor: Concurrent, Incremental, and Parallel Compaction

  • Haim Kermany, Erez Petrank.
  • ''Proceedings of the ACM SIGPLAN 2006 Conference on Programming Language Design and Implementation'', Ottawa, Canada, June 10-16, 2006.

The Atomos Transactional Programming Language

Parallelizing SPECjbb2000 with Transactional Memory

Reducing generational copy reserve overhead with fallback compaction

  • McGachey P, Hosking AL.
  • Proceedings of the 4th ACM SIGPLAN International Symposium on Memory Management (ISMM):17-28 (Ottawa, Canada, June 2006), ACM.

Strong Agent Mobility for Aglets based on the IBM JikesRVM

  • Giacomo Cabri, Luca Ferrari, Letizia Leonardi, Raffaele Quitadamo
  • The 21st ACM International Symposium on Applied Computing (SAC), Dijon, France, April 2006

Hybrid Optimizations: Which Optimization Algorithm to Use?

Space-Efficient 64-bit Java Objects through Selective Typed Virtual Addressing

Dynamic Class Hierarchy Mutation

  • Lixin Su and Mikko H Lipasti.
  • ''The 4th Annual International Symposium on Code Generation and Optimization (CGO)'', New York. March 26-29, 2006.

Online Phase Detection Algorithms

The Common Case Transactional Behavior of Multithreaded Programs

Compiler Techniques for High Performance Sequentially Consistant Java Programs.

Automatic Tuning of Inlining Heuristics

2005

Loop Parallelisation for the Jikes RVM

Continuous Path and Edge Profiling

Garbage Collection Hints

Towards Continuous Usage Control on Grid Computational Services.

  • Fabio Martinelli, Paolo Mori, and Anna Vaccarelli
  • ''International Conference on Autonomic and Autonomous Systems and International Conference on Networking and Services'', Papeete, Tahiti, October 23-28, 2005.

A Platform to Use Hardware Performance Counters for Dynamic Compilation

Comparing Low-Level Behavior of SPEC CPU and Java Workloads

  • Andy Georges, Lieven Eeckhout and Koen De Bosschere
  • Proceedings of 10th Asia-Pacific Conference, Advances in Computer Systems Architecture (ACSAC), Singapore, October 24-26, 2005.

Are Patches Cutting it? Structuring Distribution within a JVM using Aspects

  • Jennifer Baldwin, Yvonne Coady
  • ''2005 conference of the Centre for Advanced Studies on Collaborative research (CASCON)'', Toronto, Canada, Oct 17-20, 2005.

Automating Vertical Profiling

Improving Virtual Machine Performance Using a Cross-Run Repository

  • Matthew Arnold, Adam Welc, and V.T. Rajan.
  • ''ACM Conference on Object-Oriented Programming, Systems, Languages, and Applications (OOPSLA)'', San Diego, California, October 16-20, 2005.

Quantifying the Performance of Garbage Collection vs. Explicit Memory Management

  • Matthew Hertz and Emery Berger.
  • ''ACM Conference on Object-Oriented Programming, Systems, Languages, and Applications (OOPSLA)'', San Diego, California, October 16-20, 2005.

Quantifying the Performance of Garbage Collection vs.Explicit Memory Management

  • Matthew Hertz and Emery Berger.
  • ''ACM Conference on Object-Oriented Programming, Systems, Languages, and Applications (OOPSLA)'', San Diego, California, October 16-20, 2005.

Runtime Specialization With Optimistic Heap Analysis

Safe Futures for Java

Transactional Execution of Java Programs

Automatic Tuning of Inlining Heuristics

  • John Cavazos and Michael F.P. O'Boyle
  • ''SC|05 (Supercomputing): International Conference for High Performance Computing, Networking, and Storage'', Seattle WA, November 12-18, 2005.

Testing in Resource Constrained Execution Environments

JikesNode and PearColator: A Jikes RVM Operating System and Legacy Code Execution Environment

  • Ian Rogers and Chris Kirkham.
  • ''The 2nd ECOOP Workshop on Programming Languages and Operating Systems (ECOOP-PLOS '05)'', Glasgow, UK, July 26, 2005.

An Automatic Runtime DOALL Loop Parallelisation Optimization for Java

Characterization of TCC on Chip-Multiprocessors

FPGA-Aware Garbage Collection in Java

  • Faes, Ph.; Christiaens, M.; Buytaert, D. ; Stroobandt, D.
  • ''IEEE 2005 International Conference on Field Programmable Logic and Applications (FPL).'', August 2005.

Garbage Collection Without Paging

  • Matthew Hertz, Yi Feng, and Emery Berger.
  • ''ACM SIGPLAN Conference on Programming Languages Design and and Implementation (PLDI '05)'', Chicago, Il, June 13, 2005

An Execution Layer for Aspect-Oriented Programming Languages

Immutability Specification and its Application

Age-Oriented Concurrent Garbage Collection

  • Harel Paz, Erez Petrank, and Steve Blackburn.
  • ''International Conference on Compiler Construction, European Joint Conferences on Theory and Practice of Software'', Edinburgh, UK, April 2005.

An Efficient On-The-Fly Cycle Collection

  • Harel Paz, Erez Petrank, David F. Bacon, Eliot K. Kolodner, and V.T. Rajan.
  • ''International Conference on Compiler Construction, European Joint Conferences on Theory and Practice of Software'', Edinburgh, UK, April 2005.

Jazz: A Tool for Demand-Driven Structural Testing

  • Jonathan Misurda, Jim Clause, Juliya Reed, Bruce R. Childers, and Mary Lou Soffa.
  • ''International Conference on Compiler Construction, European Joint Conferences on Theory and Practice of Software'', Edinburgh, UK, April 2005.

A Study of Type Analysis for Speculative Method Inlining in a JIT Environment

  • Feng Qian and Laurie Hendren.
  • ''International Conference on Compiler Construction, European Joint Conferences on Theory and Practice of Software'', Edinburgh, UK, April 2005.

Using Interprocedural Side-effect Information in JIT Optimizations

  • Anatole Le, Ondrej Lhotak, and Laurie Hendren.
  • ''International Conference on Compiler Construction, European Joint Conferences on Theory and Practice of Software'', Edinburgh, UK, April 2005.

Effective Adaptive Computing Environment Management via Dynamic Optimization

Collecting and Exploiting High-Accuracy Call Graph Profiles in Virtual Machines

  • Matthew Arnold and David Grove
  • ''2005 International Symposium on Code Generation and Optimization'', San Jose, California, March 2005.
  • '''(Source code available as of version 2.3.5 of Jikes RVM.)'''

2004

Anticipation-Based Partial Redundancy Elimination for Static Single Assignment Form

An Inlining Technique in Jikes RVM to Improve Performance

  • Ritesh Kumar, Ragesh Jaiswal, and Sanjeev K. Aggarwal.
  • ''Advances in Computer Science and Technology'', St. Thomas, Virgin Islands, November 2004.

Finding Your Cronies: Static Analysis for Dynamic Object Colocation

  • Samuel Z. Guyer and Kathryn McKinley.
  • ''ACM Conference on Object-Oriented Programming, Systems, Languages, and Applications (OOPSLA)'', Vancouver, British Columbia, Canada, October 2004.

MC2: High-Performance Garbage Collection for Memory-Constrained Environments

  • Narendran Sachindran, J. Eliot B. Moss, and Emery Berger.
  • ''ACM Conference on Object-Oriented Programming, Systems, Languages, and Applications (OOPSLA)'', Vancouver, British Columbia, Canada, October 2004.

Method-Level Phase Behavior in Java Workloads

Program Locality: The Garbage Collection Advantage

Vertical Profiling: Understanding the Behavior of Object-Oriented Applications

Automatic Heap Sizing: Taking Real Memory Into Account

Barriers: Friend or Foe?

  • Steve Blackburn, and Antony Hosking.
  • ''ACM SIGPLAN International Symposium on Memory Management (ISMM '04)'', Vancouver, British Columbia, Canada, October 2004.

Dynamic Object Sampling for Pretenuring

Dynamic Selection of Application-Specific Garbage Collectors

Write Barrier Elision for Concurrent Garbage Collectors

  • Martin Vechev and David F. Bacon.
  • ''ACM SIGPLAN International Symposium on Memory Management (ISMM '04)'', Vancouver, British Columbia, Canada, October 2004.

Improving Grid Service Security with Fine Grain Policies

  • Fabrizio Baiardi, Fabio Martinelli, Paolo Mori, and Anna Vaccarelli
  • ''On the Move to Meaningful Internet System 2004: OTM Workshops, Lecture Notes in Computer Science'' 3292: Springer Verlag (2004)

Virtual Machine Support for Aspects with Advice Instance Tables

Micro-Measurements for Dynamic Aspect-Oriented Systems

The Use of Traces for Inlining in Java Programs

Online Impact Analysis via Dynamic Compilation Technology

Partial Redundancy Elimination for Global Value Numbering

Preemption-Based Avoidance of Priority Inversion for Java

Value-Based Partial Redundancy Elimination

  • Thomas VanDrunen and Antony Hosking.
  • ''International Conference on Compiler Construction, European Joint Conferences on Theory and Practice of Software'', Barcelona, Spain, June 2004.

Adaptive Tuning of Reserved Space in an Appel Collector

  • Jose Manuel Velasco, Katzalin Olcoz, and Francisco Tirado.
  • ''European Conference on Object-Oriented Programming (ECOOP'04)'', Oslo, Norway, June 2004.

Pointer Analysis in the Presence of Dynamic Class Loading

Transactional Monitors for Concurrent Objects

Visualization and Analysis of Phased Behavior in Java Programs

  • Priya Nagpurka and Chandra Krintz.
  • ''ACM International Conference on the Principles and Practice of Programming in Java (PPPJ)'', Las Vegas, NV, June 2004.

Myths and Reality: The Performance Impact of Garbage Collection

  • Steve Blackburn, Perry Cheng, and Kathryn McKinley.
  • ''Sigmetrics - Performance 2004, Joint International Conference on Measurement and Modeling of Computer Systems'', New York, New York, June 2004.
  • '''(Source code available as of version 2.3.2 of Jikes RVM.)'''

Adaptive Code Unloading for Resource-Constrained JVMs

  • Lingli Zhang and Chandra Krintz.
  • ''ACM SIGPLAN Conference on Languages, Compilers, and Tools for Embedded Systems (LCTES '04) and Software and Compilers for Embedded Systems (SCOPES '04)'', Washington DC, June 2004.

Inducing Heuristics to Decide Whether to Schedule

  • John Cavazos and J. Eliot B. Moss.
  • ''ACM SIGPLAN Conference on Programming Languages Design and and Implementation (PLDI '04)'', Washington DC, June 2004.

Oil and Water: High Performance Garbage Collection in Java with MMTk

  • Steve Blackburn, Perry Cheng, and Kathryn McKinley.
  • ''ICSE 2004, 26th International Conference on Software Engineering'', Edinburgh, Scotland, May 2004.
  • '''(Source code available as of version 2.3.2 of Jikes RVM.)'''

Towards Dynamic Interprocedural Analysis in JVMs

  • Feng Qian and Laurie Hendren.
  • ''USENIX 3rd Virtual Machine Research and Technology Symposium (VM'04)'', San Jose, California, May, 2004.

Using Hardware Performance Monitors to Understand the Behavior of Java Application

JVM Independent Replay in Java

A Semantic Framework for Designer Transactions

Virtual Machine Support for Dynamic Join Points

2003

The Metronome: A Simpler Approach to Garbage Collection in Real-time Systems

  • David F. Bacon, Perry Cheng, and V.T. Rajan.
  • ''Workshop on Java Technologies for Real-Time and Embedded Systems'', Catania, Sicily, November 2003.

Ulterior Reference Counting: Fast Garbage Collection without a Long Wait

  • Steve Blackburn and Kathryn McKinley.
  • ''ACM Conference on Object-Oriented Programming, Systems, Languages, and Applications (OOPSLA)'', Anaheim, California, October 2003.

An On-the-Fly Mark and Sweep Garbage Collector Based on Sliding Views

  • Hezi Azatchi, Yossi Levanoni, Harel Paz, and Erez Petrank.
  • ''ACM Conference on Object-Oriented Programming, Systems, Languages, and Applications (OOPSLA)'', Anaheim, California, October 2003.

MarkCopy: Fast Copying GC with Less Space Overhead

  • Narendran Sachindran and J. Eliot B. Moss.
  • ''ACM Conference on Object-Oriented Programming, Systems, Languages, and Applications (OOPSLA)'', Anaheim, California, October 2003.

Connectivity-Based Garbage Collection

How Java Programs Interact with Virtual Machines at the Microarchitectural Level

Transparent Fault-Tolerant Java Virtual Machine

  • Roy Friedman and Alon Kama.
  • ''22nd IEEE Symposium on Reliable Distributed Systems (SRDS)'', Florence, Italy, October, 2003.

JToe: A Java API for Object Exchange

  • Serge Chaumette, Pascal Grange, Benoit Metrot, and Pierre Vigneras.
  • ''Parallel Computing/ParCo 2003'', September 2003.

High-performance Java code for computation fluid dynamics

  • C. J. Riley, Sid Chatterjee, and R. Biswas.
  • ''Concurrency and Computation: Practice and Experience'', 15:395-415, 2003.

Detecting Malicious Java Code Using Virtual Machine Auditing

Controlling Fragmentation and Space Consumption in the Metronome, a Real-time Garbage Collector for Java

  • David F. Bacon, Perry Cheng, and V.T. Rajan.
  • ''Conference on Languages, Compilers, and Tools for Embedded Systems'', San Diego, California, June 2003.

Designing a Distributed JVM on a Cluster

Integrating Generations with Advanced Reference Counting Garbage Collectors

Just-In-Time Aspects: Efficient Dynamic Weaving for Java

Design, Implementation and Evaluation of Adaptive Recompilation with On-Stack Replacement

  • Stephen Fink, and Feng Qian.
  • ''International Symposium on Code Generation and Optimization'', San Francisco, California, March 2003.
  • '''(Source code available as of version 2.2.1 of Jikes RVM.)'''

Adaptive Online Context-Sensitive Inlining

  • Kim Hazelwood and David Grove.
  • ''International Symposium on Code Generation and Optimization'', San Francisco, California, March 2003.

Coupling On-Line and Off-Line Profile Information to Improve Program Performance

  • Chandra Krintz.
  • ''International Symposium on Code Generation and Optimization'', San Francisco, California, March 2003.

A Real-time Garbage Collector with Low Overhead and Consistent Utilization

  • David F. Bacon, Perry Cheng, and V. T. Rajan.
  • ''Conference Record of the Thirtieth ACM Symposium on Principles of Programming Languages'', New Orleans, Louisiana, January 2003.

Using the SafeTSA Representation to Boost the Performance of an Existing Java Virtual Machine

2002

Online Feedback-Directed Optimization of Java

Creating and Preserving Locality of Java Applications at Allocation and Garbage Collection Times

GCspy: An Adaptable Heap Visualisation Framework

  • Tony Printezis and Richard Jones.
  • ''ACM Conference on Object-Oriented Programming, Systems, Languages, and Applications (OOPSLA)'', Seatle, Washington, November 4-8, 2002.

Experiences Porting the Jikes RVM to Linux/IA32

  • Bowen Alpern, Maria Butrico, Tony Cocchi, Julian Dolby, Stephen Fink, David Grove, and Ton Ngo.
  • ''2nd Java Virtual Machine Research and Technology Symposium (JVM '02)'', San Francisco, California, August 1-2, 2002.
  • '''(Source code available as of version 2.1.0 of Jikes RVM.)'''

Automatic Implementation of Programming Language Consistency Models

In or Out? Putting Write Barriers in Their Place

An Adaptive, Region-based Allocator for Java

  • Feng Qian and Laurie Hendren.
  • ''ACM SIGPLAN International Symposium on Memory Management (ISMM '02)'', Berlin, Germany, June 20-21, 2002.

Understanding the Connectivity of Heap Objects

When to Use a Compilation Service?

  • Jeffrey Palm, Han Lee, Amer Diwan, J. Eliot B. Moss.
  • ''ACM SIGPLAN Conference on Languages, Compilers, and Tools for Embedded Systems (LCTES '02) and Software and Compilers for Embedded Systems (SCOPES '02)'', Berlin, Germany, June 19-21 2002.

Beltway: Getting Around Garbage Collection Gridlock

Static Load Classification for Improving the Value Predictability of Data-Cache Misses

Efficient and Precise Datarace Detection for Multithreaded Object-Oriented Programs

Older-first Garbage Collection in Practice: Evaluation in a Java Virtual Machine

Using Adaptive Optimization Techniques to Teach Mobile Java Computing

  • Chandra Krintz.
  • ''Principles and Practice of Programming in Java'', Dublin, Ireland, June 13-14, 2002.

Thin Guards: A Simple and Effective Technique for Reducing the Penalty of Dynamic Class Loading.

Atomic Instructions in Java

Space- and Time-Efficient Implementation of the Java Object Model

  • David Bacon, Stephen Fink, and David Grove.
  • ''European Conference on Object-Oriented Programming (ECOOP 2002)'', Malaga Spain, June 10-14, 2002.
  • '''(Source code available as of version 2.1.0 of Jikes RVM.)'''

The Pensieve Project: A Compiler Infrastructure for Memory Models

Exploiting Prolific Types for Memory Management and Optimizations

2001

Efficient Implementation of Java Interfaces: Invokeinterface Considered Harmless

  • Bowen Alpern, Anthony Cocchi, Stephen Fink, David Grove, and Derek Lieber.
  • ''ACM Conference on Object-Oriented Programming, Systems, Languages, and Applications (OOPSLA)'', Tampa, FL, USA, Oct 14-18, 2001.
  • '''(Source code available as of version 2.0.0 of Jikes RVM.)'''

Pretenuring for Java

Dynamic Optimistic Interprocedural Analysis: A Framework and an Application

  • Igor Pechtchanski and Vivek Sarkar.
  • ''ACM Conference on Object-Oriented Programming, Systems, Languages, and Applications (OOPSLA)'', Tampa, FL, USA, Oct 14-18, 2001.

Efficient Dependence Analysis For Java Arrays

A Comparative Evaluation of Parallel Garbage Collectors

  • C. Attansio, David Bacon, Anthony Cocchi, and Stephen Smith.
  • ''Fourteenth Annual Workshop on Languages and Compilers for Parallel Computing'', Cumberland Falls, Kentucky, Aug, 2001.
  • '''(Source code available in versions 2.0.0 through 2.2.0 of Jikes RVM.)'''

A Framework for Reducing the Cost of Instrumented Code

  • Matthew Arnold and Barbara G. Ryder.
  • ''ACM SIGPLAN Conference on Programming Language Design and Implementation (PLDI '01)'', Snowbird, Utah, June 20-22, 2001.
  • '''(Source code available as of version 2.3.0 of Jikes RVM.)'''

Java without the Coffee Breaks: A Non-intrusive Multiprocessor Garbage Collector

  • David Bacon, C. Attanasio, Han Lee, V. Rajan, and Stephen Smith.
  • ''ACM SIGPLAN Conference on Programming Language Design and Implementation (PLDI '01)'', Snowbird, Utah, June 20-22, 2001.
  • '''(Source code available in versions 2.0.0 through 2.0.3 of Jikes RVM.)'''

Program Analysis for Safety Guarantees in a Java Virtual Machine Written in Java.

  • Jan-Willem Maessen, Vivek Sarkar, and David Grove.
  • ''ACM SIGPLAN-SIGSOFT Workshop on Program Analysis for Software Tools and Engineering (PASTE '01),'' Snowbird, Utah, June 18-19, 2001.
  • '''(Source code available as of version 2.0.0 of Jikes RVM.)'''

Concurrent Cycle Collection in Reference Counted Systems

  • David Bacon and V. Rajan.
  • ''The Fifteenth European Conference on Object-Oriented Programming (ECOOP)'', University Eötvös Loránd, Budapest, Hungary, June 18-22, 2001.
  • '''(Source code available in versions 2.0.0 through 2.0.3 of Jikes RVM.)'''

High-Performance Java Codes for Computational Fluid Dynamics

  • C. J. Riley, Sid Chatterjee, and R. Biswas.
  • ''The Joint ACM Java Grande - ISCOPE 2001 Conference'', Stanford, CA, June 2001.

Dynamic Type Checking in Jalapeño

  • Bowen Alpern, Anthony Cocchi, and David Grove.
  • ''The Usenix Java Virtual Machine Research and Technology Symposium,'' April, 2001.
  • '''(Source code available as of version 2.0.0 of Jikes RVM.)'''

2000

Reducing the Overhead of Dynamic Compilation

Adaptive Optimization in the Jalapeño JVM: The Controller's Analytical Model

Adaptive Optimization in the Jalapeño JVM

Debugging by Remote Reflection

  • Ton Ngo and John Barton.
  • ''Euro-Par 2000,'' Munich, Germany, August 27 - Sept 1 2000.
  • '''(Source code available as of versions 2.0.0 through 2.1.1 of Jikes RVM.)'''

An Empirical Study of Selective Optimization

Unified Analysis of Array and Object References in Strongly Typed Languages

  • Stephen Fink, Kathleen Knobe, and Vivek Sarkar.
  • ''2000 Static Analysis Symposium (SAS 2000)'', Santa Barbara, CA, June, 2000.
  • '''(Source code available as of version 2.0.0 of Jikes RVM.)'''

ABCD: Eliminating Array Bounds Checks on Demand

  • Rastislav Bodik, Rajiv Gupta, and Vivek Sarkar.
  • ''ACM SIGPLAN 2000 Conference on Programming Language Design and Implementation (PLDI 2000)'', Vancouver, British Columbia, Canada, June 17-21, 2000.
  • '''(Source code prototype available in versions 2.0.0 through 2.2.0 of Jikes RVM.)'''

A Framework for Interprocedural Analysis and Optimization in the Presence of Dynamic Class Loading

  • Vugranam C. Sreedhar, Michael Burke, and Jong-Deok Choi.
  • '' ACM SIGPLAN 2000 Conference on Programming Language Design and Implementation (PLDI 2000)'', Vancouver, British Columbia, Canada, June 17-21, 2000.

Optimizing Java Programs in the Presence of Exceptions

The Jalapeño Virtual Machine

  • B. Alpern, C. R. Attanasio, J. J. Barton, M. G. Burke, P Cheng, J.-D. Choi, A. Cocchi, S. J. Fink, D. Grove, M. Hind, S. F. Hummel, D. Lieber, V. Litvinov, M. F. Mergen, T. Ngo, J. R. Russell, V. Sarkar, M. J. Serrano, J. C. Shepherd, S. E. Smith, V. C. Sreedhar, H. Srinivasan, and J. Whaley.
  • ''IBM System Journal'', Vol 39, No 1, February 2000.
  • '''(Source code available as of version 2.0.0 of Jikes RVM.)'''

A Comparative Study of Static and Profile-Based Heuristics for Inlining

1999

Implementing Jalapeño in Java

  • Bowen Alpern, Dick Attanasio, John J. Barton, Anthony Cocchi, Susan Flynn Hummel, Derek Lieber, Mark Mergen, Ton Ngo, Janice Shepherd, and Stephen Smith.
  • ''1999 ACM SIGPLAN Conference on Object-Oriented Programming Systems, Languages, and Applications (OOPSLA '99)'', Denver, Colorado, November 1, 1999.
  • '''(Source code available as of version 2.0.0 of Jikes RVM.)'''

Efficient and Precise Modeling of Exceptions for the Analysis of Java Programs

  • Jong-Deok Choi, David Grove, Michael Hind, Vivek Sarkar.
  • ''1999 ACM SIGPLAN-SIGSOFT Workshop on Program Analysis for Software Tools and Engineering (PASTE '99)'', Toulouse, France, September 6, 1999.
  • '''(Source code available as of version 2.0.0 of Jikes RVM.)'''

Dependence Analysis for Java

  • Craig Chambers, Igor Pechtchanski, Vivek Sarkar, Mauricio Serrano, and Harini Srinivasan.
  • ''Workshop on Languages and Compilers for Parallel Computing (LCPC 99),'' La Jolla, CA, Aug 1999.
  • '''(Source code available as of version 2.0.0 of Jikes RVM.)'''

The Jalapeño Dynamic Optimizing Compiler for Java

Jalapeño — a Compiler-supported Java Virtual Machine for Servers

  • Bowen Alpern, Anthony Cocchi, Derek Lieber, Mark Mergen, and Vivek Sarkar.
  • ''Workshop on Compiler Support for Software System (WCSSS 99)'', Atlanta, GA, May 1999, held in conjunction with PLDI '99.
  • '''(Source code available as of version 2.0.0 of Jikes RVM.)'''