< prev index next >

src/hotspot/share/prims/jvmti.xml

Print this page
rev 49244 : [mq]: event-only
rev 49245 : [mq]: event3
rev 49246 : [mq]: event4
rev 49247 : [mq]: event5

*** 10355,10365 **** </capabilityfield> <capabilityfield id="can_sample_heap" since="11"> <description> Can sample the heap. If this capability is enabled then the heap sampling method ! <functionlink id="SetTlabHeapSampling"></functionlink> can be called and the <eventlink id="SampledObjectAlloc"></eventlink> events can be enabled. </description> </capabilityfield> </capabilitiestypedef> --- 10355,10365 ---- </capabilityfield> <capabilityfield id="can_sample_heap" since="11"> <description> Can sample the heap. If this capability is enabled then the heap sampling method ! <functionlink id="SetHeapSamplingRate"></functionlink> can be called and the <eventlink id="SampledObjectAlloc"></eventlink> events can be enabled. </description> </capabilityfield> </capabilitiestypedef>
*** 11538,11582 **** </function> </category> <category id="heap_monitoring" label="Heap Monitoring"> ! <function id="SetTlabHeapSampling" phase="any" num="156" since="11"> ! <synopsis>Set TLAB Heap Sampling</synopsis> <description> ! Set up the TLAB allocation system to sample memory by forcing slow path execution at a given ! average rate via the <paramlink id="monitoring_rate"></paramlink>. The ! <paramlink id="monitoring_rate"></paramlink> will be the average sampling rate used throughout the execution. ! Setting <paramlink id="monitoring_rate"></paramlink> to 0 disables the TLAB heap sampling. Combined with a <eventlink id="SampledObjectAlloc"/> event, the Java agent can obtain object allocations with a given sample rate. </description> <origin>new</origin> <capabilities> <required id="can_sample_heap"></required> </capabilities> <parameters> ! <param id="monitoring_rate"> <jint/> <description> ! The monitoring rate in bytes used for sampling. The sampler will use a statistical approach to ! provide in average sampling every <paramlink id="monitoring_rate"/> allocated bytes. ! Note: a low monitoring rate, such as sampling every 1024 bytes, will probably incur a high overhead. Due to the incurred overhead, the sampler should only be used when knowing it may impact performance. On the other hand, sampling however every 1024kB has a far less chance of a high overhead since it will sample 1024 times less than the 1024-byte sampling. </description> </param> </parameters> <errors> <error id="JVMTI_ERROR_ILLEGAL_ARGUMENT"> ! <paramlink id="monitoring_rate"></paramlink> is less than zero. ! </error> ! <error id="JVMTI_ERROR_TLAB_DISABLED"> ! Calling this method without TLAB. </error> </errors> </function> </category> --- 11538,11580 ---- </function> </category> <category id="heap_monitoring" label="Heap Monitoring"> ! <function id="SetHeapSamplingRate" phase="any" num="156" since="11"> ! <synopsis>Set Heap Sampling Rate</synopsis> <description> ! Set up the allocation system to sample memory at a given ! average rate via the <paramlink id="sampling_rate"></paramlink> parameter, defined ! by sampling rate in bytes. The ! <paramlink id="sampling_rate"></paramlink> will be the average sampling rate in bytes used throughout the execution. ! Setting <paramlink id="sampling_rate"></paramlink> to 0 disables the heap sampling. Combined with a <eventlink id="SampledObjectAlloc"/> event, the Java agent can obtain object allocations with a given sample rate. </description> <origin>new</origin> <capabilities> <required id="can_sample_heap"></required> </capabilities> <parameters> ! <param id="sampling_rate"> <jint/> <description> ! The sampling rate in bytes used for sampling. The sampler will use a statistical approach to ! provide in average sampling every <paramlink id="sampling_rate"/> allocated bytes. ! Note: a low sampling rate, such as sampling every 1024 bytes, will probably incur a high overhead. Due to the incurred overhead, the sampler should only be used when knowing it may impact performance. On the other hand, sampling however every 1024kB has a far less chance of a high overhead since it will sample 1024 times less than the 1024-byte sampling. </description> </param> </parameters> <errors> <error id="JVMTI_ERROR_ILLEGAL_ARGUMENT"> ! <paramlink id="sampling_rate"></paramlink> is less than zero. </error> </errors> </function> </category>
*** 11786,11798 **** </errorid> <errorid id="JVMTI_ERROR_UNSUPPORTED_REDEFINITION_METHOD_MODIFIERS_CHANGED" num="71"> A method in the new class version has different modifiers than its counterpart in the old class version. </errorid> - <errorid id="JVMTI_ERROR_TLAB_DISABLED" num="72"> - The Thread Local Allocation Buffer system is disabled and the method requires it enabled. - </errorid> </errorcategory> </errorsection> <eventsection label="Events"> <intro label="Handling Events" id="eventIntro"> --- 11784,11793 ----
*** 13564,13579 **** </param> </parameters> </event> <event label="Sampled Object Allocation Trace" ! id="SampledObjectAlloc" const="JVMTI_EVENT_SAMPLED_OBJECT_ALLOC" num="86"> <description> Sent when an object is sampled via the <internallink id="heap_monitoring"> Heap Sampling Monitoring system </internallink>. Therefore, this event is sent to the user if there is at least one call to ! <functionlink id="SetTlabHeapSampling"></functionlink> with a strictly positive integer value. The event is sent once the allocation has been done and provides the object, stack trace for the allocation, the thread allocating, the size of allocation, and class. <p/> Typical use cases of this system is to determine where most heap allocation are originating from. --- 13559,13574 ---- </param> </parameters> </event> <event label="Sampled Object Allocation Trace" ! id="SampledObjectAlloc" const="JVMTI_EVENT_SAMPLED_OBJECT_ALLOC" num="86" since="11"> <description> Sent when an object is sampled via the <internallink id="heap_monitoring"> Heap Sampling Monitoring system </internallink>. Therefore, this event is sent to the user if there is at least one call to ! <functionlink id="SetHeapSamplingRate"></functionlink> with a strictly positive integer value. The event is sent once the allocation has been done and provides the object, stack trace for the allocation, the thread allocating, the size of allocation, and class. <p/> Typical use cases of this system is to determine where most heap allocation are originating from.
< prev index next >