2008 | OriginalPaper | Buchkapitel
COSTA: Design and Implementation of a Cost and Termination Analyzer for Java Bytecode
verfasst von : Elvira Albert, Puri Arenas, Samir Genaim, German Puebla, Damiano Zanardini
Erschienen in: Formal Methods for Components and Objects
Verlag: Springer Berlin Heidelberg
Aktivieren Sie unsere intelligente Suche, um passende Fachinhalte oder Patente zu finden.
Wählen Sie Textabschnitte aus um mit Künstlicher Intelligenz passenden Patente zu finden. powered by
Markieren Sie Textabschnitte, um KI-gestützt weitere passende Inhalte zu finden. powered by
This paper describes the architecture of
costa
, an abstract interpretation based
cos
t and
t
ermination
a
nalyzer for Java bytecode. The system receives as input a bytecode program, (a choice of) a
resource
of interest and tries to obtain an upper bound of the resource consumption of the program.
costa
provides several non-trivial notions of cost, as the consumption of the heap, the number of bytecode instructions executed and the number of calls to a specific method. Additionally,
costa
tries to prove
termination
of the bytecode program which implies the boundedness of any resource consumption. Having cost and termination together is interesting, as both analyses share most of the machinery to, respectively, infer cost
upper bounds
and to prove that the execution length is always
finite
(i.e., the program terminates). We report on experimental results which show that
costa
can deal with programs of realistic size and complexity, including programs which use Java libraries. To the best of our knowledge, this system provides for the first time evidence that resource usage analysis can be applied to a realistic object-oriented, bytecode programming language.