VMKit: a substrate for managed runtime environments

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

29 Citationer (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.
OriginalsprogEngelsk
TitelProceedings of the 6th ACM SIGPLAN/SIGOPS International Conference on Virtual Execution Environments
Antal sider11
ForlagAssociation for Computing Machinery
Publikationsdato2010
Sider51-61
ISBN (Elektronisk)978-1-60558-910-7
DOI
StatusUdgivet - 2010
Begivenhed6th ACM SIGPLAN/SIGOPS International Conference on Virtual Execution Environments - Pittsburgh, USA
Varighed: 17 mar. 201019 mar. 2010
Konferencens nummer: 6

Konference

Konference6th ACM SIGPLAN/SIGOPS International Conference on Virtual Execution Environments
Nummer6
Land/OmrådeUSA
ByPittsburgh
Periode17/03/201019/03/2010

Citationsformater