| <?xml version="1.0" encoding="UTF-8"?> |
| |
| <!-- |
| A trimmed down version of the default JFR profile configuration. The primary goal is that it has enough execution samples so that |
| we can diagnose common performance issues in IntelliJ. Only events that don't significantly increase the space of the recording are |
| included. The configuration is of sufficiently low overhead that it can be just left enabled if desired. The original version |
| was documented as having less than 2% overhead, and we've removed many events from it, so this is likely to introduce 1% overhead or less. |
| |
| The list of available events is documented at src/hotspot/share/jfr/metadata/metadata.xml. |
| --> |
| |
| <configuration version="2.0" label="Profiling" description="Low overhead configuration for profiling" provider="Google"> |
| |
| <event name="jdk.ThreadAllocationStatistics"> |
| <setting name="enabled">true</setting> |
| <setting name="period">everyChunk</setting> |
| </event> |
| |
| <event name="jdk.JavaThreadStatistics"> |
| <setting name="enabled">true</setting> |
| <setting name="period">1 s</setting> |
| </event> |
| |
| <event name="jdk.ThreadStart"> |
| <setting name="enabled">true</setting> |
| <setting name="stackTrace">true</setting> |
| </event> |
| |
| <event name="jdk.ThreadEnd"> |
| <setting name="enabled">true</setting> |
| </event> |
| |
| <event name="jdk.ThreadSleep"> |
| <setting name="enabled">true</setting> |
| <setting name="stackTrace">true</setting> |
| <setting name="threshold">10 ms</setting> |
| </event> |
| |
| <event name="jdk.ThreadPark"> |
| <setting name="enabled">true</setting> |
| <setting name="stackTrace">true</setting> |
| <setting name="threshold">100 ms</setting> |
| </event> |
| |
| <event name="jdk.JavaMonitorEnter"> |
| <setting name="enabled">true</setting> |
| <setting name="stackTrace">true</setting> |
| <setting name="threshold">100 ms</setting> |
| </event> |
| |
| <event name="jdk.JavaMonitorWait"> |
| <setting name="enabled">true</setting> |
| <setting name="stackTrace">true</setting> |
| <setting name="threshold">100 ms</setting> |
| </event> |
| |
| <event name="jdk.JavaMonitorInflate"> |
| <setting name="enabled">true</setting> |
| <setting name="stackTrace">true</setting> |
| <setting name="threshold">100 ms</setting> |
| </event> |
| |
| <event name="jdk.JVMInformation"> |
| <setting name="enabled">true</setting> |
| <setting name="period">beginChunk</setting> |
| </event> |
| |
| <event name="jdk.InitialSystemProperty"> |
| <setting name="enabled">true</setting> |
| <setting name="period">beginChunk</setting> |
| </event> |
| |
| <event name="jdk.ExecutionSample"> |
| <setting name="enabled">true</setting> |
| <setting name="period">10 ms</setting> |
| </event> |
| |
| <event name="jdk.Shutdown"> |
| <setting name="enabled">true</setting> |
| <setting name="stackTrace">true</setting> |
| </event> |
| |
| <event name="jdk.ThreadDump"> |
| <setting name="enabled">true</setting> |
| <setting name="period">60 s</setting> |
| </event> |
| |
| <event name="jdk.IntFlag"> |
| <setting name="enabled">true</setting> |
| <setting name="period">beginChunk</setting> |
| </event> |
| |
| <event name="jdk.UnsignedIntFlag"> |
| <setting name="enabled">true</setting> |
| <setting name="period">beginChunk</setting> |
| </event> |
| |
| <event name="jdk.LongFlag"> |
| <setting name="enabled">true</setting> |
| <setting name="period">beginChunk</setting> |
| </event> |
| |
| <event name="jdk.UnsignedLongFlag"> |
| <setting name="enabled">true</setting> |
| <setting name="period">beginChunk</setting> |
| </event> |
| |
| <event name="jdk.DoubleFlag"> |
| <setting name="enabled">true</setting> |
| <setting name="period">beginChunk</setting> |
| </event> |
| |
| <event name="jdk.BooleanFlag"> |
| <setting name="enabled">true</setting> |
| <setting name="period">beginChunk</setting> |
| </event> |
| |
| <event name="jdk.StringFlag"> |
| <setting name="enabled">true</setting> |
| <setting name="period">beginChunk</setting> |
| </event> |
| |
| <event name="jdk.IntFlagChanged"> |
| <setting name="enabled">true</setting> |
| </event> |
| |
| <event name="jdk.UnsignedIntFlagChanged"> |
| <setting name="enabled">true</setting> |
| </event> |
| |
| <event name="jdk.LongFlagChanged"> |
| <setting name="enabled">true</setting> |
| </event> |
| |
| <event name="jdk.UnsignedLongFlagChanged"> |
| <setting name="enabled">true</setting> |
| </event> |
| |
| <event name="jdk.DoubleFlagChanged"> |
| <setting name="enabled">true</setting> |
| </event> |
| |
| <event name="jdk.BooleanFlagChanged"> |
| <setting name="enabled">true</setting> |
| </event> |
| |
| <event name="jdk.StringFlagChanged"> |
| <setting name="enabled">true</setting> |
| </event> |
| |
| <event name="jdk.ObjectCount"> |
| <setting name="enabled">false</setting> |
| <setting name="period">everyChunk</setting> |
| </event> |
| |
| <event name="jdk.GCConfiguration"> |
| <setting name="enabled">true</setting> |
| <setting name="period">everyChunk</setting> |
| </event> |
| |
| <event name="jdk.GCHeapConfiguration"> |
| <setting name="enabled">true</setting> |
| <setting name="period">beginChunk</setting> |
| </event> |
| |
| <event name="jdk.YoungGenerationConfiguration"> |
| <setting name="enabled">true</setting> |
| <setting name="period">beginChunk</setting> |
| </event> |
| |
| <event name="jdk.GCTLABConfiguration"> |
| <setting name="enabled">true</setting> |
| <setting name="period">beginChunk</setting> |
| </event> |
| |
| <event name="jdk.GCSurvivorConfiguration"> |
| <setting name="enabled">true</setting> |
| <setting name="period">beginChunk</setting> |
| </event> |
| |
| <event name="jdk.ObjectCountAfterGC"> |
| <setting name="enabled">false</setting> |
| </event> |
| |
| <event name="jdk.GCHeapSummary"> |
| <setting name="enabled">true</setting> |
| </event> |
| |
| <event name="jdk.PSHeapSummary"> |
| <setting name="enabled">true</setting> |
| </event> |
| |
| <event name="jdk.G1HeapSummary"> |
| <setting name="enabled">true</setting> |
| </event> |
| |
| <event name="jdk.MetaspaceSummary"> |
| <setting name="enabled">true</setting> |
| </event> |
| |
| <event name="jdk.MetaspaceGCThreshold"> |
| <setting name="enabled">true</setting> |
| </event> |
| |
| <event name="jdk.GarbageCollection"> |
| <setting name="enabled">true</setting> |
| <setting name="threshold">0 ms</setting> |
| </event> |
| |
| <event name="jdk.ParallelOldGarbageCollection"> |
| <setting name="enabled">true</setting> |
| <setting name="threshold">0 ms</setting> |
| </event> |
| |
| <event name="jdk.YoungGarbageCollection"> |
| <setting name="enabled">true</setting> |
| <setting name="threshold">0 ms</setting> |
| </event> |
| |
| <event name="jdk.OldGarbageCollection"> |
| <setting name="enabled">true</setting> |
| <setting name="threshold">0 ms</setting> |
| </event> |
| |
| <event name="jdk.G1GarbageCollection"> |
| <setting name="enabled">true</setting> |
| <setting name="threshold">0 ms</setting> |
| </event> |
| |
| <event name="jdk.GCPhasePause"> |
| <setting name="enabled">true</setting> |
| <setting name="threshold">0 ms</setting> |
| </event> |
| |
| <event name="jdk.GCPhasePauseLevel1"> |
| <setting name="enabled">true</setting> |
| <setting name="threshold">0 ms</setting> |
| </event> |
| |
| <event name="jdk.GCPhasePauseLevel2"> |
| <setting name="enabled">true</setting> |
| <setting name="threshold">0 ms</setting> |
| </event> |
| |
| <event name="jdk.GCPhasePauseLevel3"> |
| <setting name="enabled">false</setting> |
| <setting name="threshold">0 ms</setting> |
| </event> |
| |
| <event name="jdk.GCPhasePauseLevel4"> |
| <setting name="enabled">false</setting> |
| <setting name="threshold">0 ms</setting> |
| </event> |
| |
| <event name="jdk.GCPhaseConcurrent"> |
| <setting name="enabled">true</setting> |
| <setting name="threshold">0 ms</setting> |
| </event> |
| |
| <event name="jdk.GCReferenceStatistics"> |
| <setting name="enabled">true</setting> |
| </event> |
| |
| <event name="jdk.PromotionFailed"> |
| <setting name="enabled">true</setting> |
| </event> |
| |
| <event name="jdk.EvacuationFailed"> |
| <setting name="enabled">true</setting> |
| </event> |
| |
| <event name="jdk.EvacuationInformation"> |
| <setting name="enabled">true</setting> |
| </event> |
| |
| <event name="jdk.G1MMU"> |
| <setting name="enabled">true</setting> |
| </event> |
| |
| <event name="jdk.G1EvacuationYoungStatistics"> |
| <setting name="enabled">true</setting> |
| </event> |
| |
| <event name="jdk.G1EvacuationOldStatistics"> |
| <setting name="enabled">true</setting> |
| </event> |
| |
| <event name="jdk.G1BasicIHOP"> |
| <setting name="enabled">true</setting> |
| </event> |
| |
| <event name="jdk.G1AdaptiveIHOP"> |
| <setting name="enabled">true</setting> |
| </event> |
| |
| <event name="jdk.PromoteObjectInNewPLAB"> |
| <setting name="enabled">false</setting> |
| </event> |
| |
| <event name="jdk.PromoteObjectOutsidePLAB"> |
| <setting name="enabled">false</setting> |
| </event> |
| |
| <event name="jdk.ConcurrentModeFailure"> |
| <setting name="enabled">true</setting> |
| </event> |
| |
| <event name="jdk.AllocationRequiringGC"> |
| <setting name="enabled">false</setting> |
| <setting name="stackTrace">true</setting> |
| </event> |
| |
| <event name="jdk.TenuringDistribution"> |
| <setting name="enabled">true</setting> |
| </event> |
| |
| <event name="jdk.G1HeapRegionInformation"> |
| <setting name="enabled">false</setting> |
| <setting name="period">everyChunk</setting> |
| </event> |
| |
| <event name="jdk.G1HeapRegionTypeChange"> |
| <setting name="enabled">false</setting> |
| </event> |
| |
| <event name="jdk.OldObjectSample"> |
| <setting name="enabled">true</setting> |
| <setting name="stackTrace">true</setting> |
| <setting name="cutoff">0 ns</setting> |
| </event> |
| |
| <event name="jdk.OSInformation"> |
| <setting name="enabled">true</setting> |
| <setting name="period">beginChunk</setting> |
| </event> |
| |
| <event name="jdk.VirtualizationInformation"> |
| <setting name="enabled">true</setting> |
| <setting name="period">beginChunk</setting> |
| </event> |
| |
| <event name="jdk.CPUInformation"> |
| <setting name="enabled">true</setting> |
| <setting name="period">beginChunk</setting> |
| </event> |
| |
| <event name="jdk.ThreadContextSwitchRate"> |
| <setting name="enabled">true</setting> |
| <setting name="period">10 s</setting> |
| </event> |
| |
| <event name="jdk.CPULoad"> |
| <setting name="enabled">true</setting> |
| <setting name="period">2 s</setting> |
| </event> |
| |
| <event name="jdk.ThreadCPULoad"> |
| <setting name="enabled">true</setting> |
| <setting name="period">2 s</setting> |
| </event> |
| |
| <event name="jdk.CPUTimeStampCounter"> |
| <setting name="enabled">true</setting> |
| <setting name="period">beginChunk</setting> |
| </event> |
| |
| <event name="jdk.SystemProcess"> |
| <setting name="enabled">true</setting> |
| <setting name="period">endChunk</setting> |
| </event> |
| |
| <event name="jdk.NetworkUtilization"> |
| <setting name="enabled">true</setting> |
| <setting name="period">5 s</setting> |
| </event> |
| |
| <event name="jdk.InitialEnvironmentVariable"> |
| <setting name="enabled">true</setting> |
| <setting name="period">beginChunk</setting> |
| </event> |
| |
| <event name="jdk.PhysicalMemory"> |
| <setting name="enabled">true</setting> |
| <setting name="period">everyChunk</setting> |
| </event> |
| |
| <event name="jdk.NativeLibrary"> |
| <setting name="enabled">true</setting> |
| <setting name="period">everyChunk</setting> |
| </event> |
| |
| <event name="jdk.FileForce"> |
| <setting name="enabled">true</setting> |
| <setting name="stackTrace">true</setting> |
| <setting name="threshold">10 ms</setting> |
| </event> |
| |
| <event name="jdk.FileRead"> |
| <setting name="enabled">true</setting> |
| <setting name="stackTrace">true</setting> |
| <setting name="threshold">10 ms</setting> |
| </event> |
| |
| <event name="jdk.FileWrite"> |
| <setting name="enabled">true</setting> |
| <setting name="stackTrace">true</setting> |
| <setting name="threshold">10 ms</setting> |
| </event> |
| |
| <event name="jdk.SocketRead"> |
| <setting name="enabled">true</setting> |
| <setting name="stackTrace">true</setting> |
| <setting name="threshold">10 ms</setting> |
| </event> |
| |
| <event name="jdk.SocketWrite"> |
| <setting name="enabled">true</setting> |
| <setting name="stackTrace">true</setting> |
| <setting name="threshold">10 ms</setting> |
| </event> |
| |
| <event name="jdk.JavaErrorThrow"> |
| <setting name="enabled">true</setting> |
| <setting name="stackTrace">true</setting> |
| </event> |
| |
| <event name="jdk.ExceptionStatistics"> |
| <setting name="enabled">true</setting> |
| <setting name="period">1000 ms</setting> |
| </event> |
| |
| <event name="jdk.ActiveRecording"> |
| <setting name="enabled">true</setting> |
| </event> |
| |
| <event name="jdk.ActiveSetting"> |
| <setting name="enabled">true</setting> |
| </event> |
| |
| <event name="jdk.DataLoss"> |
| <setting name="enabled">true</setting> |
| </event> |
| |
| <event name="jdk.DumpReason"> |
| <setting name="enabled">true</setting> |
| </event> |
| |
| </configuration> |