-
Enhancement
-
Resolution: Fixed
-
P2
-
5.0
-
tiger
-
generic
-
generic
The specification will be for APIs to extract profiling information from a
running Java[TM] virtual machine. Both time and memory profiling will be
supported. Both sampling and exact mechanisms will be supported. The APIs will
be designed to allow implementations which minimally perturb the profile. The
APIs will allow inter-operability of profiling and advanced garbage collection
technologies. The APIs will allow reliable implementation on the widest range
of virtual machines, part of which will be achieved by grouping functionality
into optional sets.
Queries for which optional capabilities are supported will be provided. An API
will be provided by which containers may bill work to a component. The APIs
will be targeted to provide a Java programming language model of execution,
however, some aspects of the virtual machine, native and operating system
models may be directly provided or provided via an extension mechanism.
The APIs will be intended to supersede the current experimental interface - the
Java Virtual Machine Profiling Interface (JVMPI) - and thus must provide
roughly comparable functionality.
The APIs will accommodate implementations which can dynamically enable and
disable profiling; and thus will allow implementations which have negligible
performance impact when profiling is disabled. While profiling in the
application development phase will be the primary goal of this specification,
the design objectives for low performance overhead and data perturbation will
also support profiling in the deployment phase.
This work is being developed through the JCP as JSR-163.
======================================================================
- duplicates
-
JDK-4287597 JPDA: Unification of JVMDI and JVMPI
- Closed
-
JDK-4762987 RFE: COMPILE_METHOD_LOAD event to specify PC to bci mapping
- Closed
-
JDK-4762989 RFE: a new event describing generated dynamic code in JVM
- Closed
- relates to
-
JDK-4898113 JVMTI Spec: Remove ClassUnload event
- Resolved
-
JDK-4884677 JVMTI spec changes per SQE, TCK and EG feedback
- Resolved
-
JDK-4900372 JVMTI spec: extension functions must return error code
- Resolved
-
JDK-4913883 JVMTI spec: metadata functions not useful as specified and should be removed
- Resolved
-
JDK-4913916 Agent started with -Xdebug transitions to native on each class unload
- Resolved
-
JDK-4937789 JVMTI spec: spec clarifications and missing error returns -- September
- Resolved
-
JDK-4900530 JVMTI spec: jvmtiExtensionFunctionInfo.func declared as wrong type
- Resolved
-
JDK-4905096 JVMTI implementation: native methods in agent must be available to Java code
- Resolved
-
JDK-4905952 jvmtiEnterTrace and jvmdiEnterTrace have large memory footprint
- Resolved
-
JDK-6184139 REGRESSION: CTE_REGTEST/Generic/4292742/Test.java fails - Unrecognized VM option '+FullSpeedJVMDI'
- Closed
-
JDK-4882798 JPLIS: Java programming language agents need instrumentation support (JSR-163)
- Resolved
-
JDK-4900408 JVMTI spec: need to be able to retrieve name of error
- Resolved
-
JDK-4903120 JVMTI spec: Add JNIENV option to jvmtiParamTypes enum
- Resolved
-
JDK-4914266 Remove JVMPI in Dolphin/JDK7/Java7
- Resolved
-
JDK-4854296 JNI ids must be reimplemented to support JVMTI obsolete ids, increase efficiency
- Closed
-
JDK-4913872 JVMTI agents can't be run in a backward compatible way: -Xrun
- Resolved
-
JDK-4900637 JVMTI spec: platform specific varargs handling - extension events
- Resolved
-
JDK-7050591 capabilities in init_onload_capabilities() need to be revisited
- Closed
-
JDK-4903117 JVMTI spec: heap reference iteration callbacks should allow selective follow
- Resolved
-
JDK-4939080 JVMTI spec: jvmtiThreadStatus should match java.lang.management.ThreadState
- Closed