WhatsLaggin report (manual)  21.4 s recorded, ended 2026-10-05 18:25:29
Minecraft 1.20.1, Forge 47.4.20, 482 mods, Java 17.0.8 OpenJDK 64-Bit Server VM, max heap 10.0 GB
GPU AMD Radeon RX 9070 XT (ATI Technologies Inc.), OpenGL 4.6.0 Core Profile Context 26.8.1.260810
CPU 16x AMD Ryzen 7 7800X3D 8-Core Processor, 16 threads, 31.4 GB RAM
Video 3440x1440 fullscreen @180 Hz, vsync off, fps limit unlimited, render distance 12, simulation 7, graphics fancy, shaders ComplementaryReimagined_r5.5.1 + EuphoriaPatches_1.6.8
World minecraft:overworld, 108 entities loaded

VERDICT
  364 fps average (2.75 ms per frame), 1% low 184 fps, 0.1% low 96 fps.
  GPU-BOUND: 1.59 ms of each frame (58%) is the CPU waiting for the GPU. The CPU part is only 1.16 ms.
  Optimising mod code on the render thread will not raise FPS until the GPU load drops.
  No stutters over 20 ms.

WHAT TO FIX (ranked by time lost per second of play)
  1. [gpu] GPU-bound: 58% of every frame is spent waiting on the GPU
       The CPU finishes its part of a frame in 1.16 ms and then waits 1.59 ms in glfwSwapBuffers for the GPU.
       GPU time for the frame's draw calls: p50 2.49 ms, p95 2.82 ms (timer queries).
       Cutting CPU work (mods below) will NOT raise FPS until GPU load drops.
       Biggest GPU levers: shader pack 'ComplementaryReimagined_r5.5.1 + EuphoriaPatches_1.6.8' (lower its shadow/volumetric settings), render distance (12), resolution (3440x1440), graphics mode (fancy)
  2. [cpu] oculus costs 0.22 ms per frame on the render thread
       18% of render-thread CPU time, mostly in world, 42% in its own code (rest is vanilla/library code it called)
       20%  LevelRenderer.iris$beginLevelRender:14671 [mixin handler from net.irisshaders.iris.mixin.MixinLevelRenderer]   <- LevelRenderer.renderLevel:1149
               hot: net.irisshaders.iris.uniforms.custom.cached.CachedUniform.evaluateTo:92 (18%), executing ReferencePipeline$2$1.accept (7.5%)
       17%  LevelRenderer.iris$beginTranslucents:14834 [mixin handler from net.irisshaders.iris.mixin.MixinLevelRenderer]   <- LevelRenderer.renderLevel:1370
               hot: BufferBuilder.iris$finishExtendedVertex:1689 [mixin modifyExpressionValue from net.irisshaders.iris.mixin.vertices.MixinBufferBuilder] (10%), executing DirectByteBuffer.putLong (10%)
       12%  LevelRenderer.iris$renderTerrainShadows:14696 [mixin handler from net.irisshaders.iris.mixin.MixinLevelRenderer]   <- LevelRenderer.renderLevel:1155
               hot: net.irisshaders.iris.shadows.ShadowRenderer.renderShadows:541 (18%), executing ASMEventHandler.invoke:55 (13%)
       no FPS gain while GPU-bound, but it adds to frame-time spikes
  3. [cpu] entity_model_features costs 0.15 ms per frame on the render thread
       13% of render-thread CPU time, mostly in world, 98% in its own code (rest is vanilla/library code it called)
       97%  traben.entity_model_features.models.parts.EMFModelPartVanilla.render:116   <- ModelPart.render:109
               hot: traben.entity_model_features.models.animation.math.asm.ASMParser.lambda$compileOrNull$0:162 (61%), executing EMF_ASM_Parsed_283.eval (61%)
       no FPS gain while GPU-bound, but it adds to frame-time spikes
  4. [cpu] punchy costs 0.058 ms per frame on the render thread
       5.0% of render-thread CPU time, mostly in world, 76% in its own code (rest is vanilla/library code it called)
       58%  ItemInHandRenderer.punchy$renderFirstPersonModel:1160 [mixin handler from punchy.mixin.client.ItemInHandRendererMixin]   <- ItemInHandRenderer.m_109314_$mixinextras$wrapped$87
               hot: punchy.client.animation.data.AnimationClip.hasEffectAny:145 (5.8%), executing TreeMap.compare (7.7%)
       37%  punchy.platform.ForgeClientPlatform.onClientTick:109   <- Minecraft.tick:1875
               hot: punchy.compat.BetterCombatCompat.applyVanillaItemDisplay:223 (39%), executing Throwable.fillInStackTrace (12%)
       no FPS gain while GPU-bound, but it adds to frame-time spikes
  5. [cpu] immediatelyfast costs 0.051 ms per frame on the render thread
       4.3% of render-thread CPU time, mostly in hud, 25% in its own code (rest is vanilla/library code it called)
       46%  net.raphimc.immediatelyfast.feature.core.BatchableBufferSource.endBatch:116   <- GuiGraphics.flush:125
               hot: net.raphimc.immediatelyfast.feature.core.BatchableBufferSource.endBatch:135 (81%), executing RenderStateShard.clearRenderState:41 (17%)
       10%  Gui.endBatching:15209 [mixin handler from net.raphimc.immediatelyfast.injection.mixins.hud_batching.MixinInGameHud]   <- Gui.renderCrosshair:392
               hot: net.raphimc.immediatelyfast.feature.core.BatchableBufferSource.endBatch:135 (63%), executing VertexBuffer._drawWithShader:128 (25%)
       10%  VertexBuffer.optimizeVertexDataUploading:546 [mixin redirect from net.raphimc.immediatelyfast.injection.mixins.fast_buffer_upload.MixinVertexBuffer]   <- VertexBuffer.uploadVertexBuffer:74
               executing GL15C.nglBufferSubData (100%)
       no FPS gain while GPU-bound, but it adds to frame-time spikes
  6. [cpu] embeddium costs 0.041 ms per frame on the render thread
       3.5% of render-thread CPU time, mostly in world, 40% in its own code (rest is vanilla/library code it called)
       44%  me.jellysquid.mods.sodium.client.render.SodiumWorldRenderer.drawChunkLayer:259   <- LevelRenderer.renderChunkLayer:38702
               hot: me.jellysquid.mods.sodium.client.render.chunk.terrain.TerrainRenderPass.startDrawing:62 (36%), executing RenderStateShard.setupRenderState:37 (21%)
       19%  ShaderInstance.uploadUniforms:3624 [mixin redirect from me.jellysquid.mods.sodium.mixin.features.shader.uniform.ShaderProgramMixin]   <- ShaderInstance.apply:369
               executing GL20C.nglUniformMatrix4fv (42%)
       6.3%  me.jellysquid.mods.sodium.client.render.SodiumWorldRenderer.setupTerrain:174   <- LevelRenderer.setupRender:38729
               hot: me.jellysquid.mods.sodium.client.render.chunk.RenderSectionManager.onSectionAdded:272 (25%), executing Long2ReferenceOpenHashMap.containsKey:342 (25%)
       no FPS gain while GPU-bound, but it adds to frame-time spikes
  7. [cpu] linggango_tweaks costs 0.041 ms per frame on the render thread
       3.5% of render-thread CPU time, mostly in hud, 44% in its own code (rest is vanilla/library code it called)
       49%  snownee.jade.util.ClientProxy.lambda$init$0:113   <- ForgeGui.gnetum$postEvent:3639 [mixin merged from me.decce.gnetum.mixins.ForgeGuiMixin]
               hot: snownee.jade.util.CommonProxy.isCorrectToolForDrops:220 (19%), executing ASMEventHandler.invoke:55 (16%)
       14%  snownee.jade.util.ClientProxy.onClientTick:163   <- Minecraft.tick:1875
               hot: snownee.jade.impl.config.PluginConfig.getEntry:83 (22%), executing HashMap.hash (22%)
       7.9%  com.misanthropy.linggango.linggango_tweaks.shadowdrop.VertexConsumerWrapper.vertex:65   <- VertexConsumer.putBulkData:112
               executing BufferBuilder.endVertex:263 (80%)
       no FPS gain while GPU-bound, but it adds to frame-time spikes

FRAMES
  7,749 frames   p50 2.75 ms   p95 3.51 ms   p99 4.46 ms   worst 18 ms
  per frame:  tasks 0.015 ms  client tick 0.14 ms  render 0.95 ms  present 1.60 ms  other 0.052 ms
  inside those:  swap 1.59 ms  world 0.72 ms  hud 0.20 ms  screen 0.011 ms
  client tick: 2.50 ms per tick, 20.0 ticks per second
  GPU busy per frame (timer queries): p50 2.49 ms   p95 2.82 ms   p99 2.98 ms

RENDER THREAD CPU BY MOD (sampled; excludes GPU wait, fps limiter and blocked time)
  4,261 samples: CPU work 43%, GPU wait 57%, limiter 0.0%, blocked on other threads 0.0%
  mods caused 83% of render-thread CPU work, vanilla/forge/driver the rest
  15% of CPU work is inside OpenGL calls (driver work or a GPU sync), mostly glBindFramebuffer; the mod that made the call is charged for it below
  ms/frame  share  own   mod                          mostly in
  0.22 ms   18%    42%   oculus                       world
  0.15 ms   13%    98%   entity_model_features        world
  0.14 ms   12%    93%   minecraft (vanilla)          world
  0.067 ms  5.7%   100%  forge (loader, events)       world
  0.058 ms  5.0%   76%   punchy                       world
  0.051 ms  4.3%   25%   immediatelyfast              hud
  0.041 ms  3.5%   40%   embeddium                    world
  0.041 ms  3.5%   44%   linggango_tweaks             hud
  0.038 ms  3.2%   27%   gnetum                       hud
  0.030 ms  2.5%   70%   collections_of_optimizations hud
  0.017 ms  1.4%   7.7%  asyncparticles               world
  0.017 ms  1.4%   38%   xaerolib                     hud
  0.014 ms  1.2%   0.0%  transmog                     world
  0.013 ms  1.1%   60%   pehkui                       world
  0.013 ms  1.1%   55%   flerovium                    world
  0.27 ms   112 more below 0.5% each

HOT PATHS (where each mod's render-thread time goes; SRG names translated; <- = called from)
  oculus  0.22 ms/frame, 18%
    20%   LevelRenderer.iris$beginLevelRender:14671 [mixin handler from net.irisshaders.iris.mixin.MixinLevelRenderer]  <- LevelRenderer.renderLevel:1149
          hot net.irisshaders.iris.uniforms.custom.cached.CachedUniform.evaluateTo:92 18%
          executing ReferencePipeline$2$1.accept 7.5%
    17%   LevelRenderer.iris$beginTranslucents:14834 [mixin handler from net.irisshaders.iris.mixin.MixinLevelRenderer]  <- LevelRenderer.renderLevel:1370
          hot BufferBuilder.iris$finishExtendedVertex:1689 [mixin modifyExpressionValue from net.irisshaders.iris.mixin.vertices.MixinBufferBuilder] 10%
          executing DirectByteBuffer.putLong 10%
    12%   LevelRenderer.iris$renderTerrainShadows:14696 [mixin handler from net.irisshaders.iris.mixin.MixinLevelRenderer]  <- LevelRenderer.renderLevel:1155
          hot net.irisshaders.iris.shadows.ShadowRenderer.renderShadows:541 18%
          executing ASMEventHandler.invoke:55 13%
  entity_model_features  0.15 ms/frame, 13%
    97%   traben.entity_model_features.models.parts.EMFModelPartVanilla.render:116  <- ModelPart.render:109
          hot traben.entity_model_features.models.animation.math.asm.ASMParser.lambda$compileOrNull$0:162 61%
          executing EMF_ASM_Parsed_283.eval 61%
  minecraft (vanilla)  0.14 ms/frame, 12%, hottest vanilla methods:
    17%   ClientChunkCache.getChunk:30  <- ClientLevel.asyncparticles_animateTick:21586 [mixin wrapMethod from forge.fun.qu_an.minecraft.asyncparticles.client.mixin.core.animate_tick.MixinClientLevel_AnimateTick]
    17%   DimensionSpecialEffects.getSunriseColor:58  <- me.decce.ixeris.RenderThreadStarter.run:39
    7.9%  LevelRenderer.renderLevel:1201  <- me.decce.ixeris.RenderThreadStarter.run:39
  punchy  0.058 ms/frame, 5.0%
    58%   ItemInHandRenderer.punchy$renderFirstPersonModel:1160 [mixin handler from punchy.mixin.client.ItemInHandRendererMixin]  <- ItemInHandRenderer.m_109314_$mixinextras$wrapped$87
          hot punchy.client.animation.data.AnimationClip.hasEffectAny:145 5.8%
          executing TreeMap.compare 7.7%
    37%   punchy.platform.ForgeClientPlatform.onClientTick:109  <- Minecraft.tick:1875
          hot punchy.compat.BetterCombatCompat.applyVanillaItemDisplay:223 39%
          executing Throwable.fillInStackTrace 12%
  immediatelyfast  0.051 ms/frame, 4.3%
    46%   net.raphimc.immediatelyfast.feature.core.BatchableBufferSource.endBatch:116  <- GuiGraphics.flush:125
          hot net.raphimc.immediatelyfast.feature.core.BatchableBufferSource.endBatch:135 81%
          executing RenderStateShard.clearRenderState:41 17%
    10%   Gui.endBatching:15209 [mixin handler from net.raphimc.immediatelyfast.injection.mixins.hud_batching.MixinInGameHud]  <- Gui.renderCrosshair:392
          hot net.raphimc.immediatelyfast.feature.core.BatchableBufferSource.endBatch:135 63%
          executing VertexBuffer._drawWithShader:128 25%
    10%   VertexBuffer.optimizeVertexDataUploading:546 [mixin redirect from net.raphimc.immediatelyfast.injection.mixins.fast_buffer_upload.MixinVertexBuffer]  <- VertexBuffer.uploadVertexBuffer:74
          executing GL15C.nglBufferSubData 100%
  embeddium  0.041 ms/frame, 3.5%
    44%   me.jellysquid.mods.sodium.client.render.SodiumWorldRenderer.drawChunkLayer:259  <- LevelRenderer.renderChunkLayer:38702
          hot me.jellysquid.mods.sodium.client.render.chunk.terrain.TerrainRenderPass.startDrawing:62 36%
          executing RenderStateShard.setupRenderState:37 21%
    19%   ShaderInstance.uploadUniforms:3624 [mixin redirect from me.jellysquid.mods.sodium.mixin.features.shader.uniform.ShaderProgramMixin]  <- ShaderInstance.apply:369
          executing GL20C.nglUniformMatrix4fv 42%
    6.3%  me.jellysquid.mods.sodium.client.render.SodiumWorldRenderer.setupTerrain:174  <- LevelRenderer.setupRender:38729
          hot me.jellysquid.mods.sodium.client.render.chunk.RenderSectionManager.onSectionAdded:272 25%
          executing Long2ReferenceOpenHashMap.containsKey:342 25%
  linggango_tweaks  0.041 ms/frame, 3.5%
    49%   snownee.jade.util.ClientProxy.lambda$init$0:113  <- ForgeGui.gnetum$postEvent:3639 [mixin merged from me.decce.gnetum.mixins.ForgeGuiMixin]
          hot snownee.jade.util.CommonProxy.isCorrectToolForDrops:220 19%
          executing ASMEventHandler.invoke:55 16%
    14%   snownee.jade.util.ClientProxy.onClientTick:163  <- Minecraft.tick:1875
          hot snownee.jade.impl.config.PluginConfig.getEntry:83 22%
          executing HashMap.hash 22%
    7.9%  com.misanthropy.linggango.linggango_tweaks.shadowdrop.VertexConsumerWrapper.vertex:65  <- VertexConsumer.putBulkData:112
          executing BufferBuilder.endVertex:263 80%
  gnetum  0.038 ms/frame, 3.2%
    100%  ForgeGui.gnetum$render$mixinextras$bridge$65 [mixin wrapOperation from me.decce.gnetum.mixins.ForgeGuiMixin]  <- GameRenderer.render:945
          hot ForgeGui.gnetum$postEvent:3631 [mixin merged from me.decce.gnetum.mixins.ForgeGuiMixin] 59%
          executing ASMEventHandler.invoke:55 31%

MEMORY AND GC
  allocated 2.8 GB (136 MB/s, exact, all threads), max heap 10.0 GB
  1 GC pauses (0 old/full), 13 ms paused (<0.1%), worst 13 ms, one every 21.4 s
  live data after GC 4.3 GB (43% of max)
  by mod (JFR samples scaled to each thread's exact allocation; 100% of bytes covered):
    191 MB/s  59%    jdk                       108 samples
        100%  IdentityHashMap$KeySet.iterator -> IdentityHashMap$KeyIterator
    22 MB/s   6.7%   minecraft (vanilla)       461 samples
        5.2%  EntityRenderDispatcher.shouldRender:127 -> CallbackInfoReturnable
    14 MB/s   4.2%   punchy                    73 samples
        8.2%  punchy.client.animation.PunchyAnimationManager.isClipNamed:673 -> [B
        6.8%  punchy.client.animation.data.AnimationClip.isEffectActive:156 -> TreeMap$NavigableSubMap$SubMapEntryIterator
    13 MB/s   3.9%   oculus                    68 samples
        12%  LevelRenderer.batchedentityrendering$sortEntityList:7626 [mixin localvar from net.irisshaders.batchedentityrendering.mixin.MixinLevelRenderer_EntityListSorting] -> Object;
        12%  de.odysseus.ithaka.digraph.MapDigraph$1.create:116 -> Object;
    11 MB/s   3.5%   radium                    122 samples
        45%  CompoundTag.useFasterCollection:1129 [mixin modify from me.jellysquid.mods.lithium.mixin.alloc.nbt.NbtCompoundMixin] -> Object;
        8.6%  me.jellysquid.mods.lithium.common.util.collections.HashedReferenceList.<init>:27 -> [I
        7.2%  me.jellysquid.mods.lithium.common.util.collections.HashedReferenceList.toArray:53 -> Object;
    7 MB/s    2.1%   immediatelyfast           37 samples
        14%  net.raphimc.immediatelyfast.feature.core.BatchableBufferSource.lambda$addNewFallbackBuffer$1:188 -> [J
        14%  net.raphimc.immediatelyfast.feature.core.BatchableBufferSource.endBatch:135 -> DirectByteBuffer
        11%  net.raphimc.immediatelyfast.feature.core.BatchableBufferSource.endLastBatch:103 -> 820264801
    6 MB/s    1.8%   entity_model_features     31 samples
        45%  traben.entity_model_features.models.animation.math.EMFMath.getEntityVariable:99 -> Float
        32%  traben.entity_model_features.models.animation.math.EMFMath.setEntityVariable:92 -> Float
        9.7%  traben.entity_model_features.models.parts.EMFModelPart.renderLikeVanilla:385 -> CallbackInfo
    4 MB/s    1.3%   embeddium                 72 samples
        16%  me.jellysquid.mods.sodium.client.render.chunk.lists.VisibleChunkCollector.<init>:30 -> Object;
        14%  me.jellysquid.mods.sodium.client.render.vertex.buffer.SodiumBufferBuilder.<init>:41 -> SodiumBufferBuilderPolygonView
        9.1%  me.jellysquid.mods.sodium.client.util.sorting.AbstractSort.createIndexBuffer:6 -> [I
    4 MB/s    1.1%   asyncparticles            306 samples
        21%  forge.fun.qu_an.minecraft.asyncparticles.client.core.particle.gpu_acceleration.IParticleRenderer.prepareShader:30 -> [B
        21%  forge.fun.qu_an.minecraft.asyncparticles.client.core.particle.gpu_acceleration.IParticleRenderer.prepareShader:30 -> String
        19%  ParticleEngine.lambda$tickTail$3:11686 [mixin merged from forge.fun.qu_an.minecraft.asyncparticles.client.mixin.core.particle.gpu_acceleration.MixinParticleEngine] -> AABB

INTEGRATED SERVER (single player; this is world lag, not FPS)
  428 ticks, mspt mean 5.99 ms, p50 5.64 ms, p95 8.65 ms, worst 33 ms, 0 over 50 ms
    1.38 ms/tick  23%    minecraft (vanilla)       
    0.41 ms/tick  6.8%   eeeabsmobs                com.eeeab.eeeabsmobs.sever.entity.mob.relicron.EntityRelicObserver.tick:174
    0.36 ms/tick  5.9%   linggango_tweaks          com.misanthropy.linggango.linggango_tweaks.tweak.gate.MobStages.onPotentialSpawns:130
    0.34 ms/tick  5.7%   radium                    EntitySectionStorage.forEachInBox:562 [mixin handler from me.jellysquid.mods.lithium.mixin.entity.fast_retrieval.SectionedEntityCacheMixin]
    0.29 ms/tick  4.9%   collections_of_optimizations ChunkMap.coo$reuseUnchangedSectionPos$mixinextras$bridge$228 [mixin wrapOperation from com.misanthropy.collections_of_optimizations.mixin.vanilla.MixinChunkMapEntityTracker]
    0.25 ms/tick  4.2%   forge (loader, events)    
    0.22 ms/tick  3.6%   ars_nouveau               com.hollingsworth.arsnouveau.common.entity.Whirlisprig.tick:243
    0.19 ms/tick  3.2%   pehkui                    Entity.pehkui$tick:34737 [mixin handler from virtuoel.pehkui.mixin.EntityMixin]

THREADS (exact CPU per thread group; 'runs' = what JFR saw executing on it)
  the game used 0.75 of 16 cores, whole machine 20% busy
  cores  n    allocated   group                            runs
  0.44   1    1.9 GB      Render thread                    entity_model_features 29%, minecraft 9.2%, punchy 7.9%
  0.14   1    661 MB      Server thread                    minecraft 35%, radium 8.4%, linggango_tweaks 5.1%
  0.05   1    97 MB       JFR Event Stream #               no JFR samples (idle or native)
  0.02   1    15 MB       BFR-OcclusionCuller              embeddium 65%, brute_force_culling_revived 30%, oculus 5.0%

ENTITIES, BLOCK ENTITIES, SCREENS (exact timings; per second of recording)
  entity render:
    3.22 ms/s  362/s    9 us     minecraft:item                              worst 0.22 ms at 661, 193, -1745
  entity tick:
    7.00 ms/s  20/s     350 us   minecraft:player                            worst 0.83 ms at 663, 193, -1744
    4.18 ms/s  280/s    15 us    ars_nouveau:starbuncle                      worst 0.14 ms at 721, 65, -1806
    1.64 ms/s  80/s     20 us    ars_nouveau:whirlisprig                     worst 0.12 ms at 621, 69, -1684
  server entity tick:
    8.04 ms/s  272/s    30 us    terramity:green_fairy                       worst 0.43 ms at 666, 146, -1750
    7.07 ms/s  248/s    29 us    eeeabsmobs:relic_observer                   worst 0.44 ms at 909, 8, -1049
    4.52 ms/s  118/s    38 us    ars_nouveau:whirlisprig                     worst 0.20 ms at 923, 141, -1270
    4.04 ms/s  238/s    17 us    alexsmobs:bison                             worst 0.29 ms at 632, 64, -1765
    3.31 ms/s  338/s    10 us    ars_nouveau:starbuncle                      worst 0.23 ms at 707, 67, -1651
    3.09 ms/s  193/s    16 us    eeeabsmobs:relic_ripper                     worst 0.32 ms at 904, 8, -1049
  server block entity tick:
    2.90 ms/s  12,158/s 0 us     minecraft:sculk_sensor                      worst 0.069 ms at 824, -33, -1283
    1.17 ms/s  3,988/s  0 us     minecraft:sculk_catalyst                    worst 0.055 ms at 896, 24, -961
  screen:
    2.87 ms/s  35/s     82 us    net.minecraft.client.gui.screens.ChatScreen worst 0.22 ms
    0.99 ms/s  6/s      171 us   net.minecraft.client.gui.screens.debug.GameModeSwitcherScreen worst 0.39 ms

JVM AND I/O
  class loads over 1 ms: 0 (0 ms), on the render/server thread 0 (0 ms)
  non-GC safepoints: 17 ms total (last: ThreadDump)
  log output: 0.4 lines/s
  exceptions thrown: 116.6/s, top: 28.9/s  ClassNotFoundException from tooltipoverhaul at Screen.to$emiRecord:5826 [mixin handler from dev.xylonity.tooltipoverhaul.mixin.ScreenRecorderMixin]

MOD VERSIONS (mods named in the findings)
  oculus 1.8.3;  entity_model_features 3.3.10;  punchy 2.8c;  immediatelyfast 1.5.5+1.20.4;  
  embeddium 0.3.32-beta.102-dirty+mc1.20.1;  linggango_tweaks 5.80;  

RECORDING
  stack sampler every 5 ms: 4,261 render-thread, 472 server-thread samples (server only while ticking)
  JFR on (cpu, allocation, locks, file io, class loading, safepoints, exceptions): 542 CPU samples, 2,262 allocation samples
  method names: SRG ids translated to Mojang names; mixin handlers are charged to the mod whose mixin injected them
  'own' = share of a mod's time spent in its own classes; the rest is vanilla or library code it called
