Harissa: A flexible and efficient Java']Java environment mixing bytecode and compiled code

被引:0
|
作者
Muller, G
Moura, B
Bellard, F
Consel, C
机构
关键词
!text type='Java']Java[!/text; C; bytecode; off-line compilers; JIT compilers;
D O I
暂无
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
The Java language provides a promising solution to the design of safe programs, with an application spectrum ranging from Web services to operating system components. The well-known tradeoff of Java's portability is the inefficiency of its basic execution model, which relies on the interpretation of an object-based virtual machine. Many solutions have been proposed to overcome this problem, such as just-in-time (JIT) and offline bytecode compilers. However, most compilers trade efficiency for either portability or the ability to dynamically load bytecode. In this paper, we present an approach which reconciles portability and efficiency, and preserves the ability to dynamically load bytecode. We have designed and implemented an efficient environment for the execution of Java programs, named Harissa(1) Harissa permits the mixing of compiled and interpreted methods. Harissa's compiler translates Java bytecode to C, incorporating aggressive optimizations such as virtual-method call optimization based on the Class Hierarchy Analysis. To evaluate the performance of Harissa, we have conducted an extensive experimental study aimed at comparing the various existing alternatives to execute Java programs. The C code produced by Harissa's compiler is more efficient than all other alternative ways of executing Java programs (that were available to us): it is up to 140 times faster than the JDK interpreter, up to 13 times faster than the Softway Guava JIT, and 30% faster than the Toba bytecode to C compiler.
引用
收藏
页码:1 / 20
页数:20
相关论文
共 50 条
  • [1] Mobile code security by Java']Java bytecode instrumentation
    Chander, A
    Mitchell, JC
    Shin, I
    [J]. DISCEX'01: DARPA INFORMATION SURVIVABILITY CONFERENCE & EXPOSITION II, VOL II, PROCEEDINGS, 2001, : 27 - 40
  • [2] Mobile code security by Java']Java bytecode dependence analysis
    Bian, G
    Nakayama, K
    Kobayashi, Y
    Maekawa, M
    [J]. IEEE INTERNATIONAL SYMPOSIUM ON COMMUNICATIONS AND INFORMATION TECHNOLOGIES 2004 (ISCIT 2004), PROCEEDINGS, VOLS 1 AND 2: SMART INFO-MEDIA SYSTEMS, 2004, : 923 - 926
  • [3] Code coverage differences of Java']Java bytecode and source code instrumentation tools
    Horvath, Ferenc
    Gergely, Tamas
    Beszedes, Arpad
    Tengeri, David
    Balogh, Gergo
    Gyimothy, Tibor
    [J]. SOFTWARE QUALITY JOURNAL, 2019, 27 (01) : 79 - 123
  • [4] Efficient inference of static types for Java']Java bytecode
    Gagnon, EM
    Hendren, LJ
    Marceau, G
    [J]. STATIC ANALYSIS, 2000, 1824 : 199 - 219
  • [5] Target code generation using the code expansion technique for Java']Java Bytecode
    Ko, KM
    Kim, SG
    [J]. PARALLEL AND DISTRIBUTED COMPUTING: APPLICATIONS AND TECHNOLOGIES, PROCEEDINGS, 2004, 3320 : 752 - 755
  • [6] Checking secure information flow in Java']Java bytecode by code transformation and standard bytecode verification
    Bernardeschi, C
    De Francesco, N
    Lettieri, G
    Martini, L
    [J]. SOFTWARE-PRACTICE & EXPERIENCE, 2004, 34 (13): : 1225 - 1255
  • [7] Detecting Java']Java Code Clones Based on Bytecode Sequence Alignment
    Yu, Dongjin
    Yang, Jiazha
    Chen, Xin
    Chen, Jie
    [J]. IEEE ACCESS, 2019, 7 : 22421 - 22433
  • [8] Negative Effects of Bytecode Instrumentation on Java']Java Source Code Coverage
    Tengeri, David
    Horvath, Ferenc
    Beszedes, Arpad
    Gergely, Tamas
    Gyimothy, Tibor
    [J]. 2016 IEEE 23RD INTERNATIONAL CONFERENCE ON SOFTWARE ANALYSIS, EVOLUTION, AND REENGINEERING (SANER), VOL 1, 2016, : 225 - 235
  • [9] Finding Source Code Clones in Intermediate Representations of Java']Java Bytecode
    Schaefer, Andre
    Heinze, Thomas S.
    Amme, Wolfram
    [J]. 2023 IEEE 17TH INTERNATIONAL WORKSHOP ON SOFTWARE CLONES, IWSC 2023, 2023, : 37 - 43
  • [10] Java']Java Bytecode Transformations for Efficient, Portable CPU Accounting
    Binder, Walter
    Hulaas, Jarle
    [J]. ELECTRONIC NOTES IN THEORETICAL COMPUTER SCIENCE, 2005, 141 (01) : 53 - 73