rev 8065 : 8065331
1 <?xml version="1.0" encoding="utf-8"?> 2 <!-- 3 Copyright (c) 2012, 2015, Oracle and/or its affiliates. All rights reserved. 4 DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 5 6 This code is free software; you can redistribute it and/or modify it 7 under the terms of the GNU General Public License version 2 only, as 8 published by the Free Software Foundation. 9 10 This code is distributed in the hope that it will be useful, but WITHOUT 11 ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 12 FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 13 version 2 for more details (a copy is included in the LICENSE file that 14 accompanied this code). 15 16 You should have received a copy of the GNU General Public License version 17 2 along with this work; if not, write to the Free Software Foundation, 18 Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. 19 20 Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA 21 or visit www.oracle.com if you need additional information or have any 22 questions. 23 24 --> 25 26 27 <!DOCTYPE trace SYSTEM "trace.dtd" [ 28 <!ENTITY % xinclude SYSTEM "xinclude.mod"> 29 %xinclude; 30 ]> 31 32 <trace> 33 <xi:include href="tracetypes.xml" xmlns:xi="http://www.w3.org/2001/XInclude"/> 34 35 <relation_decls> 36 <relation_decl id="GC_ID" uri="vm/gc/id"/> 37 <relation_decl id="COMP_ID" uri="vm/compiler/id"/> 38 <relation_decl id="SWEEP_ID" uri="vm/code_sweeper/id"/> 39 <relation_decl id="JAVA_MONITOR_ADDRESS" uri="java/monitor/address"/> 40 </relation_decls> 41 42 <!-- 43 44 Events in the JVM are by default timed (it's more common) 45 Perhaps a little strange. Might change. 46 47 EVENTS 48 49 Declard with the 'event' tag. 50 51 <value fields> can be one or more of 52 value - a simple primitive or constant type value 53 structvalue - value is a sub-struct. This type must be previously defined 54 with 'struct' 55 All these require you to declare type, field and label of the field. They also accept 56 an optional description of the field. If the meaning of the field is not obvious 57 from the label you should provide a description. If an event however is not actually 58 meant for end-users, you should probably _not_ write descriptions at all, since you 59 might just add more concepts the user has no notion of/interest in. 60 61 Events should be modeled after what conceptual process you are expressing, _NOT_ 62 from whatever data structures you might use inside the JVM for expressing a process. 63 64 65 STRUCT 66 67 Declared with the 'struct' tag. 68 69 Declares a structure type that can be used in other events. 70 71 --> 72 73 <events> 74 <event id="ThreadStart" path="java/thread_start" label="Java Thread Start" 75 has_thread="true" is_instant="true"> 76 <value type="JAVALANGTHREAD" field="javalangthread" label="Java Thread"/> 77 </event> 78 79 <event id="ThreadEnd" path="java/thread_end" label="Java Thread End" 80 has_thread="true" is_instant="true"> 81 <value type="JAVALANGTHREAD" field="javalangthread" label="Java Thread"/> 82 </event> 83 84 <event id="ThreadSleep" path="java/thread_sleep" label="Java Thread Sleep" 85 has_thread="true" has_stacktrace="true" is_instant="false"> 86 <value type="MILLIS" field="time" label="Sleep Time"/> 87 </event> 88 89 <event id="ThreadPark" path="java/thread_park" label="Java Thread Park" 90 has_thread="true" has_stacktrace="true" is_instant="false"> 91 <value type="CLASS" field="klass" label="Class Parked On"/> 92 <value type="MILLIS" field="timeout" label="Park Timeout"/> 93 <value type="ADDRESS" field="address" label="Address of Object Parked" relation="JAVA_MONITOR_ADDRESS"/> 94 </event> 95 96 <event id="JavaMonitorEnter" path="java/monitor_enter" label="Java Monitor Blocked" 97 has_thread="true" has_stacktrace="true" is_instant="false"> 98 <value type="CLASS" field="klass" label="Monitor Class"/> 99 <value type="JAVALANGTHREAD" field="previousOwner" label="Previous Monitor Owner"/> 100 <value type="ADDRESS" field="address" label="Monitor Address" relation="JAVA_MONITOR_ADDRESS"/> 101 </event> 102 103 <event id="JavaMonitorWait" path="java/monitor_wait" label="Java Monitor Wait" description="Waiting on a Java monitor" 104 has_thread="true" has_stacktrace="true" is_instant="false"> 105 <value type="CLASS" field="klass" label="Monitor Class" description="Class of object waited on"/> 106 <value type="OSTHREAD" field="notifier" label="Notifier Thread" description="Notifying Thread"/> 107 <value type="MILLIS" field="timeout" label="Timeout" description="Maximum wait time"/> 108 <value type="BOOLEAN" field="timedOut" label="Timed Out" description="Wait has been timed out"/> 109 <value type="ADDRESS" field="address" label="Monitor Address" description="Address of object waited on" relation="JAVA_MONITOR_ADDRESS"/> 110 </event> 111 112 <event id="ClassLoad" path="vm/class/load" label="Class Load" 113 has_thread="true" has_stacktrace="true" is_instant="false"> 114 <value type="CLASS" field="loadedClass" label="Loaded Class"/> 115 <value type="CLASS" field="definingClassLoader" label="Defining Class Loader"/> 116 <value type="CLASS" field="initiatingClassLoader" label="Initiating Class Loader"/> 117 </event> 118 119 <event id="ClassUnload" path="vm/class/unload" label="Class Unload" 120 has_thread="true" is_instant="true"> 121 <value type="CLASS" field="unloadedClass" label="Unloaded Class"/> 122 <value type="CLASS" field="definingClassLoader" label="Defining Class Loader"/> 123 </event> 124 125 <event id="LongFlagChanged" path="vm/flag/long_changed" label="Long Flag Changed" 126 is_instant="true"> 127 <value type="UTF8" field="name" label="Name" /> 128 <value type="LONG" field="old_value" label="Old Value" /> 129 <value type="LONG" field="new_value" label="New Value" /> 130 <value type="FLAGVALUEORIGIN" field="origin" label="Origin" /> 131 </event> 132 133 <event id="UnsignedLongFlagChanged" path="vm/flag/ulong_changed" label="Unsigned Long Flag Changed" 134 is_instant="true"> 135 <value type="UTF8" field="name" label="Name" /> 136 <value type="ULONG" field="old_value" label="Old Value" /> 137 <value type="ULONG" field="new_value" label="New Value" /> 138 <value type="FLAGVALUEORIGIN" field="origin" label="Origin" /> 139 </event> 140 141 <event id="DoubleFlagChanged" path="vm/flag/double_changed" label="Double Flag Changed" 142 is_instant="true"> 143 <value type="UTF8" field="name" label="Name" /> 144 <value type="DOUBLE" field="old_value" label="Old Value" /> 145 <value type="DOUBLE" field="new_value" label="New Value" /> 146 <value type="FLAGVALUEORIGIN" field="origin" label="Origin" /> 147 </event> 148 149 <event id="BooleanFlagChanged" path="vm/flag/boolean_changed" label="Boolean Flag Changed" 150 is_instant="true"> 151 <value type="UTF8" field="name" label="Name" /> 152 <value type="BOOLEAN" field="old_value" label="Old Value" /> 153 <value type="BOOLEAN" field="new_value" label="New Value" /> 154 <value type="FLAGVALUEORIGIN" field="origin" label="Origin" /> 155 </event> 156 157 <event id="StringFlagChanged" path="vm/flag/string_changed" label="String Flag Changed" 158 is_instant="true"> 159 <value type="UTF8" field="name" label="Name" /> 160 <value type="UTF8" field="old_value" label="Old Value" /> 161 <value type="UTF8" field="new_value" label="New Value" /> 162 <value type="FLAGVALUEORIGIN" field="origin" label="Origin" /> 163 </event> 164 165 <struct id="VirtualSpace"> 166 <value type="ADDRESS" field="start" label="Start Address" description="Start address of the virtual space" /> 167 <value type="ADDRESS" field="committedEnd" label="Committed End Address" description="End address of the committed memory for the virtual space" /> 168 <value type="BYTES64" field="committedSize" label="Committed Size" description="Size of the committed memory for the virtual space" /> 169 <value type="ADDRESS" field="reservedEnd" label="Reserved End Address" description="End address of the reserved memory for the virtual space" /> 170 <value type="BYTES64" field="reservedSize" label="Reserved Size" description="Size of the reserved memory for the virtual space" /> 171 </struct> 172 173 <struct id="ObjectSpace"> 174 <value type="ADDRESS" field="start" label="Start Address" description="Start address of the space" /> 175 <value type="ADDRESS" field="end" label="End Address" description="End address of the space" /> 176 <value type="BYTES64" field="used" label="Used" description="Bytes allocated by objects in the space" /> 177 <value type="BYTES64" field="size" label="Size" description="Size of the space" /> 178 </struct> 179 180 <event id="GCHeapSummary" path="vm/gc/heap/summary" label="Heap Summary" is_instant="true"> 181 <value type="UINT" field="gcId" label="GC ID" relation="GC_ID"/> 182 <value type="GCWHEN" field="when" label="When" /> 183 <structvalue type="VirtualSpace" field="heapSpace" label="Heap Space"/> 184 <value type="BYTES64" field="heapUsed" label="Heap Used" description="Bytes allocated by objects in the heap"/> 185 </event> 186 187 <struct id="MetaspaceSizes"> 188 <value type="BYTES64" field="committed" label="Committed" description="Committed memory for this space" /> 189 <value type="BYTES64" field="used" label="Used" description="Bytes allocated by objects in the space" /> 190 <value type="BYTES64" field="reserved" label="Reserved" description="Reserved memory for this space" /> 191 </struct> 192 193 <event id="MetaspaceSummary" path="vm/gc/heap/metaspace_summary" label="Metaspace Summary" is_instant="true"> 194 <value type="UINT" field="gcId" label="GC ID" relation="GC_ID"/> 195 <value type="GCWHEN" field="when" label="When" /> 196 <value type="BYTES64" field="gcThreshold" label="GC Threshold" /> 197 <structvalue type="MetaspaceSizes" field="metaspace" label="Total"/> 198 <structvalue type="MetaspaceSizes" field="dataSpace" label="Data"/> 199 <structvalue type="MetaspaceSizes" field="classSpace" label="Class"/> 200 </event> 201 202 <event id="MetaspaceGCThreshold" path="vm/gc/metaspace/gc_threshold" label="Metaspace GC Threshold" is_instant="true"> 203 <value type="BYTES64" field="oldValue" label="Old Value" /> 204 <value type="BYTES64" field="newValue" label="New Value" /> 205 <value type="GCTHRESHOLDUPDATER" field="updater" label="Updater" /> 206 </event> 207 208 <event id="MetaspaceAllocationFailure" path="vm/gc/metaspace/allocation_failure" label="Metaspace Allocation Failure" is_instant="true" has_stacktrace="true"> 209 <value type="CLASS" field="classLoader" label="Class Loader" /> 210 <value type="BOOLEAN" field="anonymousClassLoader" label="Anonymous Class Loader" /> 211 <value type="BYTES64" field="size" label="Size" /> 212 <value type="METADATATYPE" field="metadataType" label="Metadata Type" /> 213 <value type="METASPACEOBJTYPE" field="metaspaceObjectType" label="Metaspace Object Type" /> 214 </event> 215 216 <event id="MetaspaceOOM" path="vm/gc/metaspace/out_of_memory" label="Metaspace Out of Memory" is_instant="true" has_stacktrace="true"> 217 <value type="CLASS" field="classLoader" label="Class Loader" /> 218 <value type="BOOLEAN" field="anonymousClassLoader" label="Anonymous Class Loader" /> 219 <value type="BYTES64" field="size" label="Size" /> 220 <value type="METADATATYPE" field="metadataType" label="Metadata Type" /> 221 <value type="METASPACEOBJTYPE" field="metaspaceObjectType" label="Metaspace Object Type" /> 222 </event> 223 224 <event id="MetaspaceChunkFreeListSummary" path="vm/gc/metaspace/chunk_free_list_summary" label="Metaspace Chunk Free List Summary" is_instant="true"> 225 <value type="UINT" field="gcId" label="GC ID" relation="GC_ID"/> 226 <value type="GCWHEN" field="when" label="When" /> 227 <value type="METADATATYPE" field="metadataType" label="Metadata Type" /> 228 <value type="ULONG" field="specializedChunks" label="Specialized Chunks" /> 229 <value type="BYTES64" field="specializedChunksTotalSize" label="Specialized Chunks Total Size" /> 230 <value type="ULONG" field="smallChunks" label="Small Chunks" /> 231 <value type="BYTES64" field="smallChunksTotalSize" label="Small Chunks Total Size" /> 232 <value type="ULONG" field="mediumChunks" label="Medium Chunks" /> 233 <value type="BYTES64" field="mediumChunksTotalSize" label="Medium Chunks Total Size" /> 234 <value type="ULONG" field="humongousChunks" label="Humongous Chunks" /> 235 <value type="BYTES64" field="humongousChunksTotalSize" label="Humongous Chunks Total Size" /> 236 </event> 237 238 <event id="PSHeapSummary" path="vm/gc/heap/ps_summary" label="Parallel Scavenge Heap Summary" is_instant="true"> 239 <value type="UINT" field="gcId" label="GC ID" relation="GC_ID"/> 240 <value type="GCWHEN" field="when" label="When" /> 241 242 <structvalue type="VirtualSpace" field="oldSpace" label="Old Space"/> 243 <structvalue type="ObjectSpace" field="oldObjectSpace" label="Old Object Space"/> 244 245 <structvalue type="VirtualSpace" field="youngSpace" label="Young Space"/> 246 <structvalue type="ObjectSpace" field="edenSpace" label="Eden Space"/> 247 <structvalue type="ObjectSpace" field="fromSpace" label="From Space"/> 248 <structvalue type="ObjectSpace" field="toSpace" label="To Space"/> 249 </event> 250 251 <event id="GCGarbageCollection" path="vm/gc/collector/garbage_collection" label="Garbage Collection" 252 description="Garbage collection performed by the JVM"> 253 <value type="UINT" field="gcId" label="GC ID" relation="GC_ID" /> 254 <value type="GCNAME" field="name" label="Name" description="The name of the Garbage Collector" /> 255 <value type="GCCAUSE" field="cause" label="Cause" description="The reason for triggering this Garbage Collection" /> 256 <value type="TICKSPAN" field="sumOfPauses" label="Sum of Pauses" description="Sum of all the times in which Java execution was paused during the garbage collection" /> 257 <value type="TICKSPAN" field="longestPause" label="Longest Pause" description="Longest individual pause during the garbage collection" /> 258 </event> 259 260 <event id="GCParallelOld" path="vm/gc/collector/parold_garbage_collection" label="Parallel Old Garbage Collection" 261 description="Extra information specific to Parallel Old Garbage Collections"> 262 <value type="UINT" field="gcId" label="GC ID" relation="GC_ID" /> 263 <value type="ADDRESS" field="densePrefix" label="Dense Prefix" description="The address of the dense prefix, used when compacting" /> 264 </event> 265 266 <event id="GCYoungGarbageCollection" path="vm/gc/collector/young_garbage_collection" label="Young Garbage Collection" 267 description="Extra information specific to Young Garbage Collections"> 268 <value type="UINT" field="gcId" label="GC ID" relation="GC_ID" /> 269 <value type="UINT" field="tenuringThreshold" label="Tenuring Threshold" /> 270 </event> 271 272 <event id="GCOldGarbageCollection" path="vm/gc/collector/old_garbage_collection" label="Old Garbage Collection" 273 description="Extra information specific to Old Garbage Collections"> 274 <value type="UINT" field="gcId" label="GC ID" relation="GC_ID"/> 275 </event> 276 277 <event id="GCG1GarbageCollection" path="vm/gc/collector/g1_garbage_collection" label="G1 Garbage Collection" 278 description="Extra information specific to G1 Garbage Collections"> 279 <value type="UINT" field="gcId" label="GC ID" relation="GC_ID"/> 280 <value type="G1YCTYPE" field="type" label="Type" /> 281 </event> 282 283 <event id="EvacuationInfo" path="vm/gc/detailed/evacuation_info" label="Evacuation Information" is_instant="true"> 284 <value type="UINT" field="gcId" label="GC ID" relation="GC_ID"/> 285 <value type="UINT" field="cSetRegions" label="Collection Set Regions"/> 286 <value type="BYTES64" field="cSetUsedBefore" label="Collection Set Before" description="Memory usage before GC in the collection set regions"/> 287 <value type="BYTES64" field="cSetUsedAfter" label="Collection Set After" description="Memory usage after GC in the collection set regions"/> 288 <value type="UINT" field="allocationRegions" label="Allocation Regions" description="Regions chosen as allocation regions during evacuation (includes survivors and old space regions)"/> 289 <value type="BYTES64" field="allocRegionsUsedBefore" label="Alloc Regions Before" description="Memory usage before GC in allocation regions"/> 290 <value type="BYTES64" field="allocRegionsUsedAfter" label="Alloc Regions After" description="Memory usage after GC in allocation regions"/> 291 <value type="BYTES64" field="bytesCopied" label="Bytes Copied"/> 292 <value type="UINT" field="regionsFreed" label="Regions Freed"/> 293 </event> 294 295 <event id="GCReferenceStatistics" path="vm/gc/reference/statistics" 296 label="GC Reference Statistics" is_instant="true" 297 description="Total count of processed references during GC"> 298 <value type="UINT" field="gcId" label="GC ID" relation="GC_ID"/> 299 <value type="REFERENCETYPE" field="type" label="Type" /> 300 <value type="ULONG" field="count" label="Total Count" /> 301 </event> 302 303 <struct id="CopyFailed"> 304 <value type="ULONG" field="objectCount" label="Object Count"/> 305 <value type="BYTES64" field="firstSize" label="First Failed Object Size"/> 306 <value type="BYTES64" field="smallestSize" label="Smallest Failed Object Size"/> 307 <value type="BYTES64" field="totalSize" label="Total Object Size"/> 308 </struct> 309 310 <event id="ObjectCountAfterGC" path="vm/gc/detailed/object_count_after_gc" is_instant="true" label="Object Count after GC"> 311 <value type="UINT" field="gcId" label="GC ID" relation="GC_ID" /> 312 <value type="CLASS" field="class" label="Class" /> 313 <value type="LONG" field="count" label="Count" /> 314 <value type="BYTES64" field="totalSize" label="Total Size" /> 315 </event> 316 317 <!-- Promotion events, Supported GCs are Parallel Scavange, G1 and CMS with Parallel New. --> 318 <event id="PromoteObjectInNewPLAB" path="vm/gc/detailed/object_promotion_in_new_PLAB" label="Promotion in new PLAB" 319 description="Object survived scavenge and was copied to a new Promotion Local Allocation Buffer (PLAB). Supported GCs are Parallel Scavange, G1 and CMS with Parallel New. Due to promotion being done in parallel an object might be reported multiple times as the GC threads race to copy all objects." 320 has_thread="true" has_stacktrace="false" is_instant="true"> 321 <value type="UINT" field="gcId" label="GC ID" relation="GC_ID" description="ID of GC during which the object was promoted"/> 322 <value type="CLASS" field="class" label="Class" description="Class of promoted object"/> 323 <value type="BYTES64" field="objectSize" label="Object Size" description="Size of promoted object"/> 324 <value type="UINT" field="tenuringAge" label="Object Tenuring Age" description="Tenuring age of a surviving object before being copied. The tenuring age of an object is a value between 0-15 and is incremented each scavange the object survives. Newly allocated objects have tenuring age 0."/> 325 <value type="BOOLEAN" field="tenured" label="Tenured" description="True if object was promoted to Old space, otherwise the object was aged and copied to a Survivor space"/> 326 <value type="BYTES64" field="plabSize" label="PLAB Size" description="Size of the allocated PLAB to which the object was copied"/> 327 </event> 328 329 <event id="PromoteObjectOutsidePLAB" path="vm/gc/detailed/object_promotion_outside_PLAB" label="Promotion outside PLAB" 330 description="Object survived scavenge and was copied directly to the heap. Supported GCs are Parallel Scavange, G1 and CMS with Parallel New. Due to promotion being done in parallel an object might be reported multiple times as the GC threads race to copy all objects." 331 has_thread="true" has_stacktrace="false" is_instant="true"> 332 <value type="UINT" field="gcId" label="GC ID" relation="GC_ID" description="ID of GC during which the object was promoted"/> 333 <value type="CLASS" field="class" label="Class" description="Class of promoted object"/> 334 <value type="BYTES64" field="objectSize" label="Object Size" description="Size of promoted object"/> 335 <value type="UINT" field="tenuringAge" label="Object Tenuring Age" description="Tenuring age of a surviving object before being copied. The tenuring age of an object is a value between 0-15 and is incremented each scavange the object survives. Newly allocated objects have tenuring age 0."/> 336 <value type="BOOLEAN" field="tenured" label="Tenured" description="True if object was promoted to Old space, otherwise the object was aged and copied to a Survivor space"/> 337 </event> 338 339 <event id="PromotionFailed" path="vm/gc/detailed/promotion_failed" label="Promotion Failed" is_instant="true" 340 description="Promotion of an object failed"> 341 <value type="UINT" field="gcId" label="GC ID" relation="GC_ID"/> 342 <structvalue type="CopyFailed" field="data" label="Data"/> 343 <value type="OSTHREAD" field="thread" label="Running thread"/> 344 </event> 345 346 <event id="EvacuationFailed" path="vm/gc/detailed/evacuation_failed" label="Evacuation Failed" is_instant="true" 347 description="Evacuation of an object failed"> 348 <value type="UINT" field="gcId" label="GC ID" relation="GC_ID"/> 349 <structvalue type="CopyFailed" field="data" label="Data"/> 350 </event> 351 352 <event id="ConcurrentModeFailure" path="vm/gc/detailed/concurrent_mode_failure" label="Concurrent Mode Failure" 353 is_instant="true" description="Concurrent Mode failed"> 354 <value type="UINT" field="gcId" label="GC ID" relation="GC_ID"/> 355 </event> 356 357 <event id="GCPhasePause" path="vm/gc/phases/pause" label="GC Phase Pause"> 358 <value type="UINT" field="gcId" label="GC ID" relation="GC_ID"/> 359 <value type="UTF8" field="name" label="Name" /> 360 </event> 361 362 <event id="GCPhasePauseLevel1" path="vm/gc/phases/pause_level_1" label="GC Phase Pause Level 1"> 363 <value type="UINT" field="gcId" label="GC ID" relation="GC_ID"/> 364 <value type="UTF8" field="name" label="Name" /> 365 </event> 366 367 <event id="GCPhasePauseLevel2" path="vm/gc/phases/pause_level_2" label="GC Phase Pause Level 2"> 368 <value type="UINT" field="gcId" label="GC ID" relation="GC_ID"/> 369 <value type="UTF8" field="name" label="Name" /> 370 </event> 371 372 <event id="GCPhasePauseLevel3" path="vm/gc/phases/pause_level_3" label="GC Phase Pause Level 3"> 373 <value type="UINT" field="gcId" label="GC ID" relation="GC_ID"/> 374 <value type="UTF8" field="name" label="Name" /> 375 </event> 376 377 <event id="AllocationRequiringGC" path="vm/gc/detailed/allocation_requiring_gc" label="Allocation Requiring GC" 378 has_thread="true" has_stacktrace="true" is_instant="true"> 379 <value type="UINT" field="gcId" label="Pending GC ID" relation="GC_ID" /> 380 <value type="BYTES64" field="size" label="Allocation Size" /> 381 </event> 382 383 <!-- Compiler events --> 384 385 <event id="Compilation" path="vm/compiler/compilation" label="Compilation" 386 has_thread="true" is_requestable="false" is_constant="false"> 387 <value type="METHOD" field="method" label="Java Method"/> 388 <value type="UINT" field="compileID" label="Compilation ID" relation="COMP_ID"/> 389 <value type="USHORT" field="compileLevel" label="Compilation Level"/> 390 <value type="BOOLEAN" field="succeded" label="Succeeded"/> 391 <value type="BOOLEAN" field="isOsr" label="On Stack Replacement"/> 392 <value type="BYTES" field="codeSize" label="Compiled Code Size"/> 393 <value type="BYTES" field="inlinedBytes" label="Inlined Code Size"/> 394 </event> 395 396 <event id="CompilerPhase" path="vm/compiler/phase" label="Compiler Phase" 397 has_thread="true" is_requestable="false" is_constant="false"> 398 <value type="COMPILERPHASETYPE" field="phase" label="Compile Phase"/> 399 <value type="UINT" field="compileID" label="Compilation ID" relation="COMP_ID"/> 400 <value type="USHORT" field="phaseLevel" label="Phase Level"/> 401 </event> 402 403 <event id="CompilerFailure" path="vm/compiler/failure" label="Compilation Failure" 404 has_thread="true" is_requestable="false" is_constant="false" is_instant="true"> 405 <value type="UTF8" field="failure" label="Message"/> 406 <value type="UINT" field="compileID" label="Compilation ID" relation="COMP_ID"/> 407 </event> 408 409 <struct id="CiMethod"> 410 <value type="UTF8" field="class" label="Class name"/> 411 <value type="UTF8" field="name" label="Method name"/> 412 <value type="UTF8" field="signature" label="Method signature"/> 413 </struct> 414 415 <event id="CompilerInlining" path="vm/compiler/optimization/inlining" label="Method Inlining" 416 has_thread="true" is_instant="true"> 417 <value type="UINT" field="compileID" label="Compilation ID" relation="COMP_ID"/> 418 <value type="METHOD" field="caller" label="Caller Method"/> 419 <structvalue type="CiMethod" field="callee" label="Callee Method"/> 420 <value type="BOOLEAN" field="succeeded" label="Succeeded"/> 421 <value type="UTF8" field="message" label="Message"/> 422 <value type="INTEGER" field="bci" label="Byte Code Index"/> 423 </event> 424 425 <!-- Code sweeper events --> 426 427 <event id="SweepCodeCache" path="vm/code_sweeper/sweep" label="Sweep Code Cache" 428 has_thread="true" is_requestable="false" is_constant="false"> 429 <value type="INTEGER" field="sweepIndex" label="Sweep Index" relation="SWEEP_ID"/> 430 <value type="UINT" field="sweptCount" label="Methods Swept"/> 431 <value type="UINT" field="flushedCount" label="Methods Flushed"/> 432 <value type="UINT" field="markedCount" label="Methods Reclaimed"/> 433 <value type="UINT" field="zombifiedCount" label="Methods Zombified"/> 434 </event> 435 436 <!-- Code cache events --> 437 438 <event id="CodeCacheFull" path="vm/code_cache/full" label="Code Cache Full" 439 has_thread="true" is_requestable="false" is_constant="false" is_instant="true"> 440 <value type="CODEBLOBTYPE" field="codeBlobType" label="Code Heap"/> 441 <value type="ADDRESS" field="startAddress" label="Start Address"/> 442 <value type="ADDRESS" field="commitedTopAddress" label="Commited Top"/> 443 <value type="ADDRESS" field="reservedTopAddress" label="Reserved Top"/> 444 <value type="INTEGER" field="entryCount" label="Entries"/> 445 <value type="INTEGER" field="methodCount" label="Methods"/> 446 <value type="INTEGER" field="adaptorCount" label="Adaptors"/> 447 <value type="BYTES64" field="unallocatedCapacity" label="Unallocated"/> 448 <value type="INTEGER" field="fullCount" label="Full Count"/> 449 </event> 450 451 <event id="ExecuteVMOperation" path="vm/runtime/execute_vm_operation" label="VM Operation" 452 description="Execution of a VM Operation" has_thread="true"> 453 <value type="VMOPERATIONTYPE" field="operation" label="Operation" /> 454 <value type="BOOLEAN" field="safepoint" label="At Safepoint" description="If the operation occured at a safepoint."/> 455 <value type="BOOLEAN" field="blocking" label="Caller Blocked" description="If the calling thread was blocked until the operation was complete."/> 456 <value type="OSTHREAD" field="caller" label="Caller" transition="FROM" description="Thread requesting operation. If non-blocking, will be set to 0 indicating thread is unknown."/> 457 </event> 458 459 <!-- Allocation events --> 460 <event id="AllocObjectInNewTLAB" path="java/object_alloc_in_new_TLAB" label="Allocation in new TLAB" 461 description="Allocation in new Thread Local Allocation Buffer" has_thread="true" has_stacktrace="true" is_instant="true"> 462 <value type="CLASS" field="class" label="Class" description="Class of allocated object"/> 463 <value type="BYTES64" field="allocationSize" label="Allocation Size"/> 464 <value type="BYTES64" field="tlabSize" label="TLAB Size"/> 465 </event> 466 467 <event id="AllocObjectOutsideTLAB" path="java/object_alloc_outside_TLAB" label="Allocation outside TLAB" 468 description="Allocation outside Thread Local Allocation Buffers" has_thread="true" has_stacktrace="true" is_instant="true"> 469 <value type="CLASS" field="class" label="Class" description="Class of allocated object"/> 470 <value type="BYTES64" field="allocationSize" label="Allocation Size"/> 471 </event> 472 </events> 473 474 <xi:include href="../../../closed/share/vm/trace/traceeventtypes.xml" xmlns:xi="http://www.w3.org/2001/XInclude"> 475 <xi:fallback/> 476 </xi:include> 477 478 <xi:include href="../../../closed/share/vm/trace/traceevents.xml" xmlns:xi="http://www.w3.org/2001/XInclude"> 479 <xi:fallback/> 480 </xi:include> 481 </trace> --- EOF ---