VMKit: a substrate for managed runtime environments

Nicolas Geoffray, Gaël Thomas, Julia Lawall, Gilles Muller, Bertil Folliot

29 Citations (Scopus)

Abstract

Managed Runtime Environments (MREs), such as the JVM and
the CLI, form an attractive environment for program execution, by
providing portability and safety, via the use of a bytecode language
and automatic memory management, as well as good performance,
via just-in-time (JIT) compilation. Nevertheless, developing a fully
featured MRE, including e.g. a garbage collector and JIT compiler,
is a herculean task. As a result, new languages cannot easily take
advantage of the benefits of MREs, and it is difficult to experiment
with extensions of existing MRE based languages.

This paper describes and evaluates VMKit, a first attempt to
build a common substrate that eases the development of high-level
MREs. We have successfully used VMKit to build two MREs: a
Java Virtual Machine and a Common Language Runtime. We provide
an extensive study of the lessons learned in developing this
infrastructure, and assess the ease of implementing new MREs or
MRE extensions and the resulting performance. In particular, it
took one of the authors only one month to develop a Common
Language Runtime using VMKit. VMKit furthermore has performance
comparable to the well established open source MREs Cacao,
Apache Harmony and Mono, and is 1.2 to 3 times slower than
JikesRVM on most of the DaCapo benchmarks.
Original languageEnglish
Title of host publicationProceedings of the 6th ACM SIGPLAN/SIGOPS International Conference on Virtual Execution Environments
Number of pages11
PublisherAssociation for Computing Machinery
Publication date2010
Pages51-61
ISBN (Electronic)978-1-60558-910-7
DOIs
Publication statusPublished - 2010
Event6th ACM SIGPLAN/SIGOPS International Conference on Virtual Execution Environments - Pittsburgh, United States
Duration: 17 Mar 201019 Mar 2010
Conference number: 6

Conference

Conference6th ACM SIGPLAN/SIGOPS International Conference on Virtual Execution Environments
Number6
Country/TerritoryUnited States
CityPittsburgh
Period17/03/201019/03/2010

Cite this