Java']Java virtual machine profiler interface

被引:15
作者
Viswanathan, D
Liang, S
机构
[1] Extric Software Inc, Redwood Shores, CA 94065 USA
[2] Sun Microsyst Inc, Palo Alto, CA 94303 USA
关键词
D O I
10.1147/sj.391.0082
中图分类号
TP [自动化技术、计算机技术];
学科分类号
0812 ;
摘要
We present the Java(TM) Virtual Machine Profiler Interface (JVMPI), which defines a general-purpose and portable mechanism for obtaining comprehensive profiling data from the Java virtual machine. Vile 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.
引用
收藏
页码:82 / 95
页数:14
相关论文
共 24 条
[1]  
AMMONS G, 1997, ACM SIGPLAN C PROGR
[2]  
APPEL A, 1988, CSTR19788 PRINC U
[3]  
ARAL Z, 1988, P ACM SIGPLAN PPEALS, P21
[4]   OPTIMALLY PROFILING AND TRACING PROGRAMS [J].
BALL, T ;
LARUS, JR .
ACM TRANSACTIONS ON PROGRAMMING LANGUAGES AND SYSTEMS, 1994, 16 (04) :1319-1360
[5]  
BARTON JJ, 1998, DOBBS J, V24, P44
[6]   PROFILING UNDER UNIX BY PATCHING [J].
BISHOP, M .
SOFTWARE-PRACTICE & EXPERIENCE, 1987, 17 (10) :729-739
[7]  
CIERNIAK M, 1997, JAVA COMPUTATIONAL S, V2
[8]  
*COMP CORP, 1999, TRUET TRUEC NUM
[9]  
DETLEFS DL, 1995, PROCEEDINGS OF THE USENIX CONFERENCE ON OBJECT-ORIENTED TECHNOLOGIES (COOTS), P69
[10]  
GOSLING J, 1996, JAVA LANGUAGE SPECIF