The design and implementation of a modular and extensible Java']Java Virtual Machine

被引:1
|
作者
Doyle, P [1 ]
Cavanna, C [1 ]
Abdelrahman, TS [1 ]
机构
[1] Univ Toronto, Edward S Rogers Sr Dept Elect & Comp Engn, Toronto, ON M5S 3G4, Canada
来源
SOFTWARE-PRACTICE & EXPERIENCE | 2004年 / 34卷 / 03期
关键词
!text type='Java']Java[!/text] Virtual Machines (JVMs); modular and extensible design; JVM infrastructures; design for scalability;
D O I
10.1002/spe.565
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
This paper describes the design, implementation, and experimental evaluation of a modular and extensible Java(TM) Virtual Machine (JVM) infrastructure, called Jupiter. The infrastructure is intended to serve as a vehicle for our research on scalable JVM architectures for a cluster of PC workstations, with support for shared memory in software. Jupiter is constructed, using a building block architecture, out of many modules with small, simple interfaces. This flexible structure, similar to UNIX(R) shells that build complex command pipelines out of discrete programs, allows the rapid prototyping of our research ideas by confining changes in JVM design to a small number of modules. In spite of this flexibility, Jupiter delivers good performance. Experimental evaluation of the current implementation of Jupiter using the SPECjvm98 and the EPCC Java Grande single-threaded and multithreaded benchmarks reflects competitive performance. Jupiter is on average about 2.5 times faster than Kaffe and about 2 times slower than the Sun Microsystems JDK (interpreter versions only). By providing a flexible JVM infrastructure that delivers competitive performance, we believe we have developed a framework that supports further research into JVM scalability. Copyright (C) 2003 John Wiley Sons, Ltd.
引用
收藏
页码:287 / 313
页数:27
相关论文
共 50 条
  • [41] Program analysis for safety guarantees in a Java']Java virtual machine written in Java']Java
    Maessen, JW
    Sarkar, V
    Grove, D
    ACM SIGPLAN NOTICES, 2001, : 62 - 65
  • [42] Evaluating the Java']Java virtual machine as a target for languages other than Java']Java
    Gough, KJ
    Corney, D
    MODULAR PROGRAMMING LANGUAGES, PROCEEDINGS, 2001, 1897 : 278 - 290
  • [44] Minimizing Impact on Java']Java Virtual Machine via JAVA']JAVA Code Optimization
    Myalapalli, Vamsi Krishna
    Geloth, Sunitha
    2015 INTERNATIONAL CONFERENCE ON ENERGY SYSTEMS AND APPLICATIONS, 2015, : 19 - 24
  • [45] Auto-tuning the Java']Java Virtual Machine
    Jayasena, Sanath
    Fernando, Milinda
    Rusira, Tharindu
    Perera, Chalitha
    Philips, Chamara
    2015 IEEE 29TH INTERNATIONAL PARALLEL AND DISTRIBUTED PROCESSING SYMPOSIUM WORKSHOPS, 2015, : 1261 - 1270
  • [46] Garbage collection in an embedded Java']Java virtual machine
    Cha, Chang-Il
    Kim, Hyung-Jun
    Hwang, Kyu-Jeong
    Kim, Sang-Wook
    Lee, Sang-Yun
    Won, Hee-Sun
    KNOWLEDGE-BASED INTELLIGENT INFORMATION AND ENGINEERING SYSTEMS, PT 1, PROCEEDINGS, 2006, 4251 : 443 - 450
  • [47] A fault-tolerant Java']Java virtual machine
    Napper, J
    Alvisi, L
    Vin, H
    2003 INTERNATIONAL CONFERENCE ON DEPENDABLE SYSTEMS AND NETWORKS, PROCEEDINGS, 2003, : 425 - 434
  • [48] Hardware architecture for Java']Java in a hardware/software co-design of the virtual machine
    Kent, KB
    Serra, M
    EUROMICRO SYMPOSIUM ON DIGITAL SYSTEM DESIGN, PROCEEDINGS: ARCHITECTURES, METHODS AND TOOLS, 2002, : 20 - 27
  • [49] Exploitation of multicore systems in a Java']Java virtual machine
    Sciampacone, R. A.
    Sundaresan, V.
    Maier, D.
    Gray-Donald, T.
    IBM JOURNAL OF RESEARCH AND DEVELOPMENT, 2010, 54 (05)
  • [50] Operational semantics of the Java']Java Card Virtual Machine
    Siveroni, IA
    JOURNAL OF LOGIC AND ALGEBRAIC PROGRAMMING, 2004, 58 (1-2): : 3 - 25