Experiments in Cost Analysis of Java']Java Bytecode

被引:7
|
作者
Albert, E. [1 ]
Arenas, P. [1 ]
Genaim, S. [2 ]
Puebla, G. [2 ]
Zanardini, D. [2 ]
机构
[1] Univ Complutense Madrid, DSIC, Madrid, Spain
[2] Tech Univ Madrid, Madrid, Spain
关键词
Cost analysis; !text type='Java']Java[!/text] bytecode; cost relations; recurrence equations; complexity;
D O I
10.1016/j.entcs.2007.02.061
中图分类号
TP301 [理论、方法];
学科分类号
081202 ;
摘要
Recently, we proposed a general framework for the cost analysis of Java bytecode which can be used for measuring resource usage. This analysis generates, at compile-time, cost relations which define the cost of programs as a function of their input data size. The purpose of this paper is to assess the practicality of such cost analysis by experimentally evaluating a prototype analyzer implemented in Ciao. With this aim, we approximate the computational complexity of a set of selected benchmarks, including both well-known algorithms which have been used to evaluate existing cost analyzers in other programming paradigms, and other benchmarks which illustrate object-oriented features. In our evaluation, we first study whether the generated cost relations can be automatically solved. Our experiments show that in some cases the inferred cost relations can be automatically solved by using the Mathematica system, whereas, in other cases, some prior manipulation is required for the equations to be solvable. Moreover, we experimentally evaluated the running time of the different phases of the analysis process. Overall, we believe our experiments show that the efficiency of our cost analysis is acceptable, and that the obtained cost relations are useful in practice since, at least in our experiments, it is possible to get a closed form solution.
引用
收藏
页码:67 / 83
页数:17
相关论文
共 50 条
  • [21] Reverse execution of Java']Java bytecode
    Cook, JJ
    COMPUTER JOURNAL, 2002, 45 (06): : 608 - 619
  • [22] AUTOMATED TERMINATION ANALYSIS OF JAVA']JAVA BYTECODE BY TERM REWRITING
    Otto, Carsten
    Brockschmidt, Marc
    von Essen, Christian
    Giesl, Juergen
    PROCEEDINGS OF THE 21ST INTERNATIONAL CONFERENCE ON REWRITING TECHNIQUES AND APPLICATIONS (RTA'10), 2010, 6 : 259 - 275
  • [23] Mobile code security by Java']Java bytecode dependence analysis
    Bian, G
    Nakayama, K
    Kobayashi, Y
    Maekawa, M
    IEEE INTERNATIONAL SYMPOSIUM ON COMMUNICATIONS AND INFORMATION TECHNOLOGIES 2004 (ISCIT 2004), PROCEEDINGS, VOLS 1 AND 2: SMART INFO-MEDIA SYSTEMS, 2004, : 923 - 926
  • [24] An Efficient, Parametric Fixpoint Algorithm for Analysis of Java']Java Bytecode
    Mendez, Mario
    Navas, Jorge
    Hermenegildo, Manuel V.
    ELECTRONIC NOTES IN THEORETICAL COMPUTER SCIENCE, 2007, 190 (01) : 51 - 66
  • [25] Magic-sets transformation for the analysis of Java']Java bytecode
    Payet, Etienne
    Spot, Fausto
    STATIC ANALYSIS, PROCEEDINGS, 2007, 4634 : 452 - +
  • [26] Verified Java']Java Bytecode Verification
    Klein, Gerwin
    IT-INFORMATION TECHNOLOGY, 2005, 47 (02): : 107 - 110
  • [27] An Evaluation of Current Java']Java Bytecode Decompilers
    Hamilton, James
    Danicic, Sebastian
    2009 NINTH IEEE INTERNATIONAL WORKING CONFERENCE ON SOURCE CODE ANALYSIS AND MANIPULATION, PROCEEDINGS, 2009, : 129 - 136
  • [28] Vulnerabilities Constraint Based Analysis Approach for Java']Java Bytecode Programs
    Achour, Safaa
    Benattou, Mohammed
    PROCEEDINGS OF 2018 6TH INTERNATIONAL CONFERENCE ON MULTIMEDIA COMPUTING AND SYSTEMS (ICMCS), 2018, : 93 - 98
  • [29] Using CLP Simplifications to Improve Java']Java Bytecode Termination Analysis
    Spoto, Fausto
    Lu, Lunjin
    Mesnard, Fred
    ELECTRONIC NOTES IN THEORETICAL COMPUTER SCIENCE, 2009, 253 (05) : 129 - 144
  • [30] Verification of Java']Java bytecode using analysis and transformation of logic programs
    Albert, E.
    Gomez-Zamalloa, M.
    Hubert, L.
    Puebla, G.
    PRACTICAL ASPECTS OF DECLARATIVE LANGUAGES, 2007, 4354 : 124 - +