Abstract
Code coverage information is typically recorded by adding instru-
mentation to an application before or during execution. However,
this has the disadvantage that the instrumentation decreases the per-
formance.
A high-performance virtual machine (VM), such as Oracle’s
Java HotSpot VM, is already designed to record profiling data for
the executed application. This profiling data is intended to guide
optimizations during just-in-time (JIT) compilation. In this paper,
we propose a runtime system that allows deriving exact code cover-
age information from this recorded profiling data by guaranteeing
certain system properties. With this approach, we avoid the has-
sle of instrumenting the application explicitly. Therefore, we mini-
mize both the run-time overhead and the implementation effort for
recording code coverage information.
We implemented our approach for a variant of the Java HotSpot
VM that uses a trace-based JIT compiler. However, our approach is
simple and general enough to be applicable to most modern VMs.
Our evaluation with industry-strength benchmark suites shows that
this approach allows recording code coverage information while
retaining almost full peak performance. So, our approach is also
suitable for collecting code coverage information in day-to-day
operation environments such as long running server applications.
| Originalsprache | Englisch |
|---|---|
| Titel | PPPJ´13 Proceedings of the 2013 International Conference on Principles and Practices of Programming on the Java Platform: Virtual Machines, Languages, and Tools |
| Verlag | ACM New York |
| Seiten | 1-12 |
| Seitenumfang | 12 |
| ISBN (Print) | 9781450321112 |
| DOIs | |
| Publikationsstatus | Veröffentlicht - 2013 |
Publikationsreihe
| Name | ACM International Conference Proceeding Series |
|---|
Wissenschaftszweige
- 102 Informatik
- 102009 Computersimulation
- 102011 Formale Sprachen
- 102013 Human-Computer Interaction
- 102029 Praktische Informatik
- 102022 Softwareentwicklung
- 102024 Usability Research
JKU-Schwerpunkte
- Computation in Informatics and Mathematics
- TNF Allgemein
Projekte
- 1 Abgeschlossen
-
Verallgemeinerte Just-in-Time Trace-Compilierung für Java
Häubl, C. (Forscher*in) & Mössenböck, H. (Projektleiter*in)
01.07.2010 → 30.09.2013
Projekt: Geförderte Forschung › FWF - Österreichischer Wissenschaftsfonds
Dieses zitieren
- APA
- Author
- BIBTEX
- Harvard
- Standard
- RIS
- Vancouver