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 条
  • [41] Java bytecode clone detection via relaxation on code fingerprint and Semantic Web reasoning
    Keivanloo, Iman
    Roy, Chanchai K.
    Rilling, Juergen
    [J]. 2012 6th International Workshop on Software Clones, IWSC 2012 - Proceedings, 2012, : 36 - 42
  • [42] Improving Java']JavaScript Performance via Efficient In-memory Bytecode Caching
    Heo, Jun
    Woo, Seungjin
    Jang, Hakbeom
    Yang, Kyungyeon
    Lee, Jae W.
    [J]. 2016 IEEE INTERNATIONAL CONFERENCE ON CONSUMER ELECTRONICS-ASIA (ICCE-ASIA), 2016,
  • [43] Efficient Detection of Errors in Java']Java Components Using Random Environment and Restarts
    Parizek, Pavel
    Kalibera, Tomas
    [J]. TOOLS AND ALGORITHMS FOR THE CONSTRUCTION AND ANALYSIS OF SYSTEMS, PROCEEDINGS, 2010, 6015 : 451 - 465
  • [44] jLab: Integrating a scripting interpreter with Java']Java technology for flexible and efficient scientific computation
    Papadimitriou, Stergios
    Terzidis, Konstantinos
    [J]. COMPUTER LANGUAGES SYSTEMS & STRUCTURES, 2009, 35 (03) : 217 - 240
  • [45] An Efficient and Scalable Platform for Java']Java Source Code Analysis Using Overlaid Graph Representations
    Rodriguez-Prieto, Oscar
    Mycroft, Alan
    Ortin, Francisco
    [J]. IEEE ACCESS, 2020, 8 (08): : 72239 - 72260
  • [46] Jcluster: an efficient Java']Java parallel environment on a large-scale heterogeneous cluster
    Zhang, Bao-Yin
    Yang, Guang-Wen
    Zheng, Wei-Min
    [J]. CONCURRENCY AND COMPUTATION-PRACTICE & EXPERIENCE, 2006, 18 (12): : 1541 - 1557
  • [47] Package Templates: A Definition by Semantics-Preserving Source-to-Source Transformations to Efficient Java']Java Code
    Axelsen, Eyvind W.
    Krogdahl, Stein
    [J]. ACM SIGPLAN NOTICES, 2013, 48 (03) : 50 - 59
  • [48] Java-programmed bootloading in spite of load-time code patching on a minimal embedded bytecode processor
    Department of Computer Science, Technische Universität Dresden, 01062 Dresden, Germany
    [J]. Proc. Int. Conf. Embedded Syst. Appl., ESA, 1600, (260-264):
  • [49] MPJ/Ibis: A flexible and efficient message passing platform for Java
    Bornemann, Markus
    Van Nieuwpoort, Rob V.
    Kielmann, Thilo
    [J]. Lect. Notes Comput. Sci, (217-224):
  • [50] Efficient java code generation of security protocols specified in AnB/AnBx
    Modesti, Paolo
    [J]. Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics), 2014, 8743 : 204 - 208