article · IBM Systems Journal · 2000
Java Virtual Machine Profiler Interface
Deepa Viswanathan, Liang Sheng
Cited by 64Abstract and details only
Abstract
We present the Java™ Virtual Machine Profiler Interface (JVMPI), which defines a general-purpose and portable mechanism for obtaining comprehensive profiling data from the Java virtual machine. We show that it is extensible, nonintrusive, and powerful enough to suit the needs of different profilers and virtual machine implementations. With the JVMPI, most profiler vendors will not need to build custom instrumentation in the Java virtual machine. In addition, we solve challenges to profiler design and implementation posed by the multithreading and garbage collection support provided by the Java virtual machine. Profilers based on the JVMPI can produce thread-aware CPU time profiles, uncover heavy memory allocation sites, detect unnecessary object retention, pinpoint scalability problems caused by high monitor contention, reveal thread deadlocks, and perform interactive profiling with minimum overhead. We also describe HPROF, a profiler based on JVMPI, developed by us to demonstrate the power of JVMPI.
Cite this paper
Viswanathan, D., & Sheng, L. (2000). Java Virtual Machine Profiler Interface. IBM Systems Journal, 39(1), 82–95. https://doi.org/10.1147/sj.391.0082
Viswanathan, Deepa, and Liang Sheng. “Java Virtual Machine Profiler Interface.” IBM Systems Journal, vol. 39, no. 1, 2000, pp. 82–95, https://doi.org/10.1147/sj.391.0082.
Viswanathan, Deepa, and Liang Sheng. 2000. “Java Virtual Machine Profiler Interface.” IBM Systems Journal 39 (1): 82–95. https://doi.org/10.1147/sj.391.0082.
Viswanathan, D. and Sheng, L. (2000) ‘Java Virtual Machine Profiler Interface’, IBM Systems Journal, 39(1), pp. 82–95. Available at: https://doi.org/10.1147/sj.391.0082.
@article{viswanathan2000java,
title = {{Java Virtual Machine Profiler Interface}},
author = {Viswanathan, Deepa and Sheng, Liang},
journal = {IBM Systems Journal},
volume = {39},
number = {1},
pages = {82--95},
year = {2000},
doi = {10.1147/sj.391.0082}
}Made from the index record. Check names, capitalisation and page numbers against the paper. Need another style? AI for Research has over 10,000.