WhatsLaggin report (manual)  1m03s recorded, ended 2026-10-22 14:19:09
Minecraft 1.20.1, Forge 47.4.20, 462 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.10.1.261008
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 16, simulation 7, graphics fancy, shaders off
World minecraft:overworld, 134 entities loaded

VERDICT
  860 fps average (1.16 ms per frame), 1% low 189 fps, 0.1% low 45 fps.
  BALANCED: 0.66 ms CPU plus 0.50 ms waiting on the GPU per frame. Cuts on either side help.
  9 stutters over 20 ms (8.6 per minute), worst 163 ms. Biggest cause: whole-process stall.

WHAT TO FIX (ranked by time lost per second of play)
  1. [gpu] Partly GPU-bound: 0.50 ms of each 1.16 ms frame waits on the GPU
       Both CPU and GPU cuts help here. CPU work: 0.66 ms per frame.
       Biggest GPU levers: render distance (16), resolution (3440x1440), graphics mode (fancy)
  2. [stutter] Stutter: whole-process stall
       6 frames over 20 ms, worst 158 ms, 569 ms of extra frame time per minute
  3. [cpu] embeddium costs 0.091 ms per frame on the render thread
       14% of render-thread CPU time, mostly in world, 52% in its own code (rest is vanilla/library code it called)
       74%  me.jellysquid.mods.sodium.client.render.SodiumWorldRenderer.drawChunkLayer:284   <- LevelRenderer.renderChunkLayer:40702
               hot: me.jellysquid.mods.sodium.client.render.chunk.DefaultChunkRenderer.fillCommandBuffer:165 (44%), executing GL32C.nglMultiDrawElementsBaseVertex (24%)
       6.4%  ShaderInstance.uploadUniforms:4132 [mixin redirect from me.jellysquid.mods.sodium.mixin.features.shader.uniform.ShaderProgramMixin]   <- ShaderInstance.apply:369
               hot: Uniform.sodium$matchesLastUpload:2184 [mixin merged from me.jellysquid.mods.sodium.mixin.features.shader.uniform.UniformMixin] (19%), executing GL20C.nglUniform1fv (24%)
       4.5%  me.jellysquid.mods.sodium.client.render.SodiumWorldRenderer.setupTerrain:238   <- LevelRenderer.setupRender:40729
               hot: me.jellysquid.mods.sodium.client.render.chunk.RenderSectionManager.tickVisibleRenders:361 (48%), executing Long2ReferenceOpenHashMap$MapIterator.nextEntry:662 (2.3%)
       removing this cost entirely: about 860 -> 933 fps
  4. [cpu] immediatelyfast costs 0.045 ms per frame on the render thread
       7.1% of render-thread CPU time, mostly in world, 28% in its own code (rest is vanilla/library code it called)
       44%  net.raphimc.immediatelyfast.feature.core.BatchableBufferSource.endBatch:116   <- ItemInHandRenderer.m_109314_$mixinextras$wrapped$96:327
               hot: net.raphimc.immediatelyfast.feature.core.BatchableBufferSource.endBatch:135 (77%), executing RenderStateShard.clearRenderState:41 (17%)
       21%  net.raphimc.immediatelyfast.feature.core.BatchableBufferSource.endLastBatch:105   <- LevelRenderer.renderLevel:1228
               hot: net.raphimc.immediatelyfast.feature.core.BatchableBufferSource.endBatch:135 (73%), executing GL15C.nglBufferSubData (14%)
       15%  net.raphimc.immediatelyfast.feature.core.BatchableBufferSource.endBatch:125   <- LevelRenderer.renderLevel:1283
               hot: net.raphimc.immediatelyfast.feature.core.BatchableBufferSource.endBatch:135 (45%), executing RenderStateShard.setupRenderState:37 (20%)
       removing this cost entirely: about 860 -> 894 fps
  5. [cpu] linggango_tweaks costs 0.031 ms per frame on the render thread
       4.9% of render-thread CPU time, mostly in world, 30% in its own code (rest is vanilla/library code it called)
       29%  snownee.jade.util.ClientProxy.lambda$init$0:113   <- ForgeGui.gnetum$postEvent:3138 [mixin merged from me.decce.gnetum.mixins.ForgeGuiMixin]
               hot: snownee.jade.overlay.DisplayHelper.drawText:429 (19%), executing BufferBuilder.endVertex:263 (24%)
       20%  com.misanthropy.linggango.linggango_tweaks.lumalight.LumalightClient.onRenderLevel:91   <- GameRenderer.renderLevel:1128
               hot: com.misanthropy.linggango.linggango_tweaks.lumalight.PostEffectRenderer.draw:210 (35%), executing GL45C.glBlitNamedFramebuffer (28%)
       14%  com.misanthropy.linggango.linggango_tweaks.client.DynamicCrosshairHandler.onRenderCrosshair:205   <- ForgeGui.gnetum$postEvent:3130 [mixin merged from me.decce.gnetum.mixins.ForgeGuiMixin]
               executing GL20C.glUseProgram (13%)
       removing this cost entirely: about 860 -> 883 fps
  6. [stutter] Stutter: embeddium: me.jellysquid.mods.sodium.client.gl.device.GLRenderDevice$ImmediateDrawCommandList.multiDrawElementsBaseVertex
       1 frames over 20 ms, worst 163 ms, 154 ms of extra frame time per minute
  7. [cpu] gnetum costs 0.026 ms per frame on the render thread
       4.1% of render-thread CPU time, mostly in hud, 27% in its own code (rest is vanilla/library code it called)
       100%  ForgeGui.gnetum$render$mixinextras$bridge$64 [mixin wrapOperation from me.decce.gnetum.mixins.ForgeGuiMixin]   <- GameRenderer.render:945
               hot: ForgeGui.gnetum$postEvent:3130 [mixin merged from me.decce.gnetum.mixins.ForgeGuiMixin] (45%), executing ASMEventHandler.invoke:55 (27%)
       removing this cost entirely: about 860 -> 879 fps
  8. [stutter] Stutter: whatslaggin: com.misanthropy.whatslaggin.profiler.ProfilerService.frameEnd
       1 frames over 20 ms, worst 125 ms, 118 ms of extra frame time per minute
  9. [cpu] collections_of_optimizations costs 0.023 ms per frame on the render thread
       3.6% of render-thread CPU time, mostly in world, 77% in its own code (rest is vanilla/library code it called)
       10.0%  net.raphimc.immediatelyfast.feature.core.BatchableBufferSource.coo$onlyBusyLayers:1065 [mixin redirect from com.misanthropy.collections_of_optimizations.mixin.immediatelyfast.MixinBatchableBufferSource]   <- net.raphimc.immediatelyfast.feature.core.BatchableBufferSource.endBatch:117
               executing ObjectLinkedOpenHashSet.contains:543 (4.2%)
       8.7%  LevelRenderer.coo$replayOutlineEdges:19601 [mixin wrapOperation from com.misanthropy.collections_of_optimizations.mixin.vanilla.MixinLevelRendererOutlineEdges]   <- LevelRenderer.renderShape:2283
               executing BufferBuilder.endVertex:263 (71%)
       7.9%  com.misanthropy.collections_of_optimizations.core.GeckoFastCube.tryRender:77   <- software.bernie.geckolib.renderer.GeoRenderer.renderCube:533
       removing this cost entirely: about 860 -> 877 fps
 10. [cpu] oculus costs 0.023 ms per frame on the render thread
       3.6% of render-thread CPU time, mostly in world, 23% in its own code (rest is vanilla/library code it called)
       28%  LevelRenderer.iris$renderTranslucentAfterDeferred:18140 [mixin redirect from net.irisshaders.iris.mixin.fantastic.MixinLevelRenderer]   <- LevelRenderer.renderLevel:1381
               hot: ParticleEngine.lambda$iris$selectParticlesToRender$0:6181 [mixin merged from net.irisshaders.iris.mixin.fantastic.MixinParticleEngine] (7.5%), executing ParticleEngine.render:3227 (24%)
       15%  GlStateManager.iris$modify:2835 [mixin redirect from net.irisshaders.iris.mixin.MixinGlStateManager_DepthColorOverride]   <- GlStateManager._drawElements:718
               executing GL11C.nglDrawElements (100%)
       12%  GameRenderer.iris$disableVanillaHandRendering:8534 [mixin redirect from net.irisshaders.iris.mixin.MixinGameRenderer]   <- GameRenderer.renderItemInHand:852
               hot: GlStateManager.iris$modify:2835 [mixin redirect from net.irisshaders.iris.mixin.MixinGlStateManager_DepthColorOverride] (17%), executing ASMEventHandler.invoke:55 (28%)
       removing this cost entirely: about 860 -> 877 fps

FRAMES
  54,110 frames   p50 1.08 ms   p95 1.72 ms   p99 3.18 ms   worst 163 ms
  per frame:  tasks 0.005 ms  client tick 0.052 ms  render 0.55 ms  present 0.51 ms  other 0.045 ms
  inside those:  swap 0.50 ms  world 0.44 ms  hud 0.090 ms  screen 0.002 ms
  client tick: 2.23 ms per tick, 20.0 ticks per second
  GPU busy per frame (timer queries): p50 0.75 ms   p95 1.26 ms   p99 1.59 ms

RENDER THREAD CPU BY MOD (sampled; excludes GPU wait, fps limiter and blocked time)
  12,437 samples: CPU work 54%, GPU wait 46%, limiter 0.0%, blocked on other threads 0.0%
  mods caused 78% of render-thread CPU work, vanilla/forge/driver the rest
  19% of CPU work is inside OpenGL calls (driver work or a GPU sync), mostly glMultiDrawElementsBaseVertex; the mod that made the call is charged for it below
  ms/frame  share  own   mod                          mostly in
  0.091 ms  14%    52%   embeddium                    world
  0.074 ms  12%    82%   minecraft (vanilla)          world
  0.063 ms  9.9%   100%  forge (loader, events)       world
  0.045 ms  7.1%   28%   immediatelyfast              world
  0.031 ms  4.9%   30%   linggango_tweaks             world
  0.026 ms  4.1%   27%   gnetum                       hud
  0.023 ms  3.6%   77%   collections_of_optimizations world
  0.023 ms  3.6%   23%   oculus                       world
  0.021 ms  3.3%   74%   punchy                       world
  0.018 ms  2.9%   20%   asyncparticles               world
  0.017 ms  2.7%   77%   xaeroworldmap                no phase
  0.015 ms  2.4%   70%   geckolib                     world
  0.010 ms  1.6%   100%  transmog                     world
  0.010 ms  1.6%   7.4%  let_there_be_atmosphere      world
  0.009 ms  1.5%   48%   brute_force_culling_revived  world
  0.16 ms   132 more below 0.5% each

HOT PATHS (where each mod's render-thread time goes; SRG names translated; <- = called from)
  embeddium  0.091 ms/frame, 14%
    74%   me.jellysquid.mods.sodium.client.render.SodiumWorldRenderer.drawChunkLayer:284  <- LevelRenderer.renderChunkLayer:40702
          hot me.jellysquid.mods.sodium.client.render.chunk.DefaultChunkRenderer.fillCommandBuffer:165 44%
          executing GL32C.nglMultiDrawElementsBaseVertex 24%
    6.4%  ShaderInstance.uploadUniforms:4132 [mixin redirect from me.jellysquid.mods.sodium.mixin.features.shader.uniform.ShaderProgramMixin]  <- ShaderInstance.apply:369
          hot Uniform.sodium$matchesLastUpload:2184 [mixin merged from me.jellysquid.mods.sodium.mixin.features.shader.uniform.UniformMixin] 19%
          executing GL20C.nglUniform1fv 24%
    4.5%  me.jellysquid.mods.sodium.client.render.SodiumWorldRenderer.setupTerrain:238  <- LevelRenderer.setupRender:40729
          hot me.jellysquid.mods.sodium.client.render.chunk.RenderSectionManager.tickVisibleRenders:361 48%
          executing Long2ReferenceOpenHashMap$MapIterator.nextEntry:662 2.3%
  minecraft (vanilla)  0.074 ms/frame, 12%, hottest vanilla methods:
    19%   Entity.shouldRender:1562  <- me.decce.ixeris.RenderThreadStarter.run:39
    16%   EntityRenderDispatcher.getRenderer:530  <- me.decce.ixeris.RenderThreadStarter.run:39
    7.7%  LevelRenderer.renderLevel:1198  <- me.decce.ixeris.RenderThreadStarter.run:39
          executing Iterators$1.next:146 9.8%
  immediatelyfast  0.045 ms/frame, 7.1%
    44%   net.raphimc.immediatelyfast.feature.core.BatchableBufferSource.endBatch:116  <- ItemInHandRenderer.m_109314_$mixinextras$wrapped$96:327
          hot net.raphimc.immediatelyfast.feature.core.BatchableBufferSource.endBatch:135 77%
          executing RenderStateShard.clearRenderState:41 17%
    21%   net.raphimc.immediatelyfast.feature.core.BatchableBufferSource.endLastBatch:105  <- LevelRenderer.renderLevel:1228
          hot net.raphimc.immediatelyfast.feature.core.BatchableBufferSource.endBatch:135 73%
          executing GL15C.nglBufferSubData 14%
    15%   net.raphimc.immediatelyfast.feature.core.BatchableBufferSource.endBatch:125  <- LevelRenderer.renderLevel:1283
          hot net.raphimc.immediatelyfast.feature.core.BatchableBufferSource.endBatch:135 45%
          executing RenderStateShard.setupRenderState:37 20%
  linggango_tweaks  0.031 ms/frame, 4.9%
    29%   snownee.jade.util.ClientProxy.lambda$init$0:113  <- ForgeGui.gnetum$postEvent:3138 [mixin merged from me.decce.gnetum.mixins.ForgeGuiMixin]
          hot snownee.jade.overlay.DisplayHelper.drawText:429 19%
          executing BufferBuilder.endVertex:263 24%
    20%   com.misanthropy.linggango.linggango_tweaks.lumalight.LumalightClient.onRenderLevel:91  <- GameRenderer.renderLevel:1128
          hot com.misanthropy.linggango.linggango_tweaks.lumalight.PostEffectRenderer.draw:210 35%
          executing GL45C.glBlitNamedFramebuffer 28%
    14%   com.misanthropy.linggango.linggango_tweaks.client.DynamicCrosshairHandler.onRenderCrosshair:205  <- ForgeGui.gnetum$postEvent:3130 [mixin merged from me.decce.gnetum.mixins.ForgeGuiMixin]
          executing GL20C.glUseProgram 13%
  gnetum  0.026 ms/frame, 4.1%
    100%  ForgeGui.gnetum$render$mixinextras$bridge$64 [mixin wrapOperation from me.decce.gnetum.mixins.ForgeGuiMixin]  <- GameRenderer.render:945
          hot ForgeGui.gnetum$postEvent:3130 [mixin merged from me.decce.gnetum.mixins.ForgeGuiMixin] 45%
          executing ASMEventHandler.invoke:55 27%
  collections_of_optimizations  0.023 ms/frame, 3.6%
    10.0% net.raphimc.immediatelyfast.feature.core.BatchableBufferSource.coo$onlyBusyLayers:1065 [mixin redirect from com.misanthropy.collections_of_optimizations.mixin.immediatelyfast.MixinBatchableBufferSource]  <- net.raphimc.immediatelyfast.feature.core.BatchableBufferSource.endBatch:117
          executing ObjectLinkedOpenHashSet.contains:543 4.2%
    8.7%  LevelRenderer.coo$replayOutlineEdges:19601 [mixin wrapOperation from com.misanthropy.collections_of_optimizations.mixin.vanilla.MixinLevelRendererOutlineEdges]  <- LevelRenderer.renderShape:2283
          executing BufferBuilder.endVertex:263 71%
    7.9%  com.misanthropy.collections_of_optimizations.core.GeckoFastCube.tryRender:77  <- software.bernie.geckolib.renderer.GeoRenderer.renderCube:533
  oculus  0.023 ms/frame, 3.6%
    28%   LevelRenderer.iris$renderTranslucentAfterDeferred:18140 [mixin redirect from net.irisshaders.iris.mixin.fantastic.MixinLevelRenderer]  <- LevelRenderer.renderLevel:1381
          hot ParticleEngine.lambda$iris$selectParticlesToRender$0:6181 [mixin merged from net.irisshaders.iris.mixin.fantastic.MixinParticleEngine] 7.5%
          executing ParticleEngine.render:3227 24%
    15%   GlStateManager.iris$modify:2835 [mixin redirect from net.irisshaders.iris.mixin.MixinGlStateManager_DepthColorOverride]  <- GlStateManager._drawElements:718
          executing GL11C.nglDrawElements 100%
    12%   GameRenderer.iris$disableVanillaHandRendering:8534 [mixin redirect from net.irisshaders.iris.mixin.MixinGameRenderer]  <- GameRenderer.renderItemInHand:852
          hot GlStateManager.iris$modify:2835 [mixin redirect from net.irisshaders.iris.mixin.MixinGlStateManager_DepthColorOverride] 17%
          executing ASMEventHandler.invoke:55 28%
  punchy  0.021 ms/frame, 3.3%
    96%   ItemInHandRenderer.punchy$renderFirstPersonModel:1160 [mixin handler from punchy.mixin.client.ItemInHandRendererMixin]  <- ItemInHandRenderer.m_109314_$mixinextras$wrapped$96
          hot punchy.client.state.MovementStateMachine.endRenderSample:419 6.6%
          executing Matrix4f.mul:1141 6.6%

STUTTERS (frames over 20 ms, grouped by what was happening during them)
  frames  worst     extra/min   cause
  6       158 ms    569 ms      whole-process stall
  1       163 ms    154 ms      embeddium: me.jellysquid.mods.sodium.client.gl.device.GLRenderDevice$ImmediateDrawCommandList.multiDrawElementsBaseVertex
  1       125 ms    118 ms      whatslaggin: com.misanthropy.whatslaggin.profiler.ProfilerService.frameEnd
  1       26 ms     24 ms       GPU / driver (buffer swap)

  worst frames:
  14:18:51.127  163 ms   render 163 ms         embeddium: me.jellysquid.mods.sodium.client.gl.device.GLRenderDevice$ImmediateDrawCommandList.multiDrawElementsBaseVertex
                             2 of 3 samples, hottest line me.jellysquid.mods.sodium.client.render.chunk.terrain.TerrainRenderPass.endDrawing:67
  14:18:31.119  158 ms   render 158 ms         whole-process stall
                             every thread was stopped (OS scheduling, paging, or a JVM pause JFR did not see)
  14:19:01.098  127 ms   present 126 ms        whole-process stall
                             every thread was stopped (OS scheduling, paging, or a JVM pause JFR did not see)
  14:18:11.112  125 ms   present 124 ms        whatslaggin: com.misanthropy.whatslaggin.profiler.ProfilerService.frameEnd
                             2 of 3 samples, hottest line com.misanthropy.whatslaggin.profiler.ProfilerService.frameEnd:214
  14:18:41.084  121 ms   present 121 ms        whole-process stall
                             every thread was stopped (OS scheduling, paging, or a JVM pause JFR did not see)
  14:18:21.069  113 ms   render 113 ms         whole-process stall
                             every thread was stopped (OS scheduling, paging, or a JVM pause JFR did not see)
  14:19:01.142  44 ms    client tick 42 ms     whole-process stall
                             every thread was stopped (OS scheduling, paging, or a JVM pause JFR did not see)
  14:18:41.127  42 ms    client tick 41 ms     whole-process stall
                             every thread was stopped (OS scheduling, paging, or a JVM pause JFR did not see)
  14:18:57.303  26 ms    present 25 ms         GPU / driver (buffer swap)
                             5 of 5 samples waiting in glfwSwapBuffers

MEMORY AND GC
  allocated 7.6 GB (124 MB/s, exact, all threads), max heap 10.0 GB
  9 GC pauses (0 old/full), 63 ms paused (<0.1%), worst 15 ms, one every 7.0 s
  live data after GC 7.0 GB (70% of max), changed by 75 MB over the recording
  by mod (JFR samples scaled to each thread's exact allocation; 99% of bytes covered):
    21 MB/s   17%    minecraft (vanilla)       2,999 samples
        3.9%  EntityGetter.getNearestPlayer:81 -> ArrayList$Itr
    12 MB/s   9.8%   immediatelyfast           225 samples
        29%  net.raphimc.immediatelyfast.feature.core.BatchableBufferSource.lambda$addNewFallbackBuffer$1:188 -> [J
        13%  net.raphimc.immediatelyfast.feature.core.BatchableBufferSource.lambda$addNewFallbackBuffer$1:188 -> Object;
        7.6%  net.raphimc.immediatelyfast.feature.core.BatchableBufferSource.endBatch:135 -> BufferBuilder$DrawState
    8 MB/s    6.8%   punchy                    156 samples
        3.8%  punchy.client.render.PunchyArmRenderer.getLocalMatrix:1489 -> Matrix4f
    8 MB/s    6.7%   embeddium                 1,153 samples
        18%  me.jellysquid.mods.sodium.client.render.chunk.lists.ChunkRenderList.sectionsWithGeometryIterator:65 -> ReversibleByteArrayIterator
        15%  BufferBuilder.onFormatChanged:5580 [mixin handler from me.jellysquid.mods.sodium.mixin.core.render.immediate.consumer.BufferBuilderMixin] -> SodiumBufferBuilder
        8.4%  me.jellysquid.mods.sodium.client.render.chunk.ChunkRenderMatrices.from:11 -> Matrix4f
    6 MB/s    4.6%   linggango_tweaks          316 samples
        20%  snownee.jade.overlay.DisplayHelper.drawText:429 -> CallbackInfoReturnable
        16%  snownee.jade.overlay.DisplayHelper.drawText:429 -> 1875136405
        12%  snownee.jade.overlay.DisplayHelper.drawText:429 -> CallbackInfo
    5 MB/s    4.3%   collections_of_optimizations 215 samples
        20%  com.misanthropy.collections_of_optimizations.core.FancyMenuGuiPoseStack.pushPose:26 -> Matrix4f
        10%  net.raphimc.immediatelyfast.feature.core.BatchableBufferSource.coo$singleLookupGetBuffer:1118 [mixin handler from com.misanthropy.collections_of_optimizations.mixin.immediatelyfast.MixinBatchableBufferSource] -> Collections$SingletonSet
        9.1%  com.misanthropy.collections_of_optimizations.core.FancyMenuGuiPoseStack.<init>:18 -> Object;
    5 MB/s    3.9%   geckolib                  90 samples
        11%  software.bernie.geckolib.core.animation.AnimationController.getAnimationPointAtTick:885 -> AnimationPoint
        8.9%  software.bernie.geckolib.util.RenderUtils.rotateMatrixAroundCube:61 -> Quaternionf
        8.9%  software.bernie.geckolib.util.RenderUtils.rotateMatrixAroundCube:62 -> Quaternionf
    4 MB/s    3.1%   gnetum                    72 samples
        40%  me.decce.gnetum.PassManager.cachingDisabled -> 1879846817
        24%  me.decce.gnetum.PassManager.cachingDisabled -> 2133006786
        8.3%  me.decce.gnetum.FramebufferManager.blit:95 -> Matrix4f
    3 MB/s    2.1%   radium                    103 samples
        52%  CompoundTag.useFasterCollection:1129 [mixin modify from me.jellysquid.mods.lithium.mixin.alloc.nbt.NbtCompoundMixin] -> Object;
        16%  me.jellysquid.mods.lithium.common.shapes.VoxelShapeSimpleCube.move:48 -> VoxelShapeSimpleCube
        6.8%  ServerLevel.redirectBlockStateTick:4159 [mixin redirect from me.jellysquid.mods.lithium.mixin.alloc.chunk_random.ServerWorldMixin] -> BlockPos
    2 MB/s    2.0%   simplyswords              138 samples
        16%  Level.simplyswords$applyLocalStormRain:14529 [mixin handler from net.sweenus.simplyswords.mixin.client.WorldWeatherMixin] -> Float
        9.5%  net.sweenus.simplyswords.api.IncapacitatingStatusEffectRegistry.isIncapacitated:27 -> 805536380
        7.1%  net.sweenus.simplyswords.api.IncapacitatingStatusEffectRegistry.isIncapacitated:25 -> HashMap$ValueSpliterator

INTEGRATED SERVER (single player; this is world lag, not FPS)
  1,262 ticks, mspt mean 5.14 ms, p50 4.72 ms, p95 7.01 ms, worst 134 ms, 1 over 50 ms
    1.73 ms/tick  34%    minecraft (vanilla)       
    0.47 ms/tick  9.1%   forge (loader, events)    
    0.22 ms/tick  4.2%   collections_of_optimizations ChunkMap.coo$reuseUnchangedSectionPos$mixinextras$bridge$238 [mixin wrapOperation from com.misanthropy.collections_of_optimizations.mixin.vanilla.MixinChunkMapEntityTracker]
    0.21 ms/tick  4.1%   radium                    ServerLevel.redirectBlockStateTick:4159 [mixin redirect from me.jellysquid.mods.lithium.mixin.alloc.chunk_random.ServerWorldMixin]
    0.17 ms/tick  3.4%   ending_library            ServerEntity.tickCheckCapData:2581 [mixin handler from com.mega.endinglib.mixin.capability.ServerEntityMixin]
    0.11 ms/tick  2.1%   connectivity              Connection.connectivity$logErrorFor:533 [mixin redirect from com.connectivity.mixin.AdvancedPacketErrorLogging]
    0.11 ms/tick  2.1%   servercore                ServerChunkCache.servercore$updateCachedChunks:1641 [mixin modifyExpressionValue from me.wesley1808.servercore.mixin.optimizations.ticking.chunk.cache.ServerChunkCacheMixin]

THREADS (exact CPU per thread group; 'runs' = what JFR saw executing on it)
  the game used 0.94 of 16 cores, whole machine 20% busy
  cores  n    allocated   group                            runs
  0.59   1    5.6 GB      Render thread                    minecraft 11%, collections_of_optimizations 11%, punchy 7.7%
  0.14   10   49 MB       Flywheel Task Executor ##        flywheel 100%
  0.07   1    1.5 GB      Server thread                    minecraft 31%
  0.03   1    320 KB      spark-monitoring-thread          no JFR samples (idle or native)
  0.02   1    9 KB        JFR Periodic Tasks               no JFR samples (idle or native)

ENTITIES, BLOCK ENTITIES, SCREENS (exact timings; per second of recording)
  entity render:
    12 ms/s    567/s    20 us    terramity:green_fairy                       worst 1.01 ms at 2512, 68, 794
    2.26 ms/s  72/s     31 us    crittersandcompanions:leaf_insect           worst 1.39 ms at 2493, 69, 781
  entity tick:
    8.65 ms/s  20/s     432 us   minecraft:player                            worst 0.79 ms at 2527, 68, 778
    1.50 ms/s  79/s     19 us    terramity:green_fairy                       worst 0.35 ms at 2444, 72, 745
    0.95 ms/s  21/s     45 us    alexsmobs:blue_jay                          worst 0.15 ms at 2558, 68, 759
  server entity tick:
    8.15 ms/s  244/s    33 us    terramity:green_fairy                       worst 5.39 ms at 2442, 72, 747
    3.22 ms/s  62/s     52 us    minecraft:zombie                            worst 0.54 ms at 2474, -4, 826
    2.22 ms/s  163/s    14 us    minecraft:creeper                           worst 0.30 ms at 2478, 10, 828
  screen:
    1.34 ms/s  16/s     84 us    net.minecraft.client.gui.screens.ChatScreen worst 0.27 ms

JVM AND I/O
  class loads over 1 ms: 3 (45 ms), on the render/server thread 3 (45 ms)
  non-GC safepoints: 291 ms total (last: ThreadDump)
  log output: 0.0 lines/s
  exceptions thrown: 4.5/s, top: 1.2/s  WindowsException from ftbteams at dev.ftb.mods.ftbteams.data.TeamManagerImpl.saveNow:219

MOD VERSIONS (mods named in the findings)
  embeddium 0.3.32-beta.113-dirty+mc1.20.1;  immediatelyfast 1.5.5+1.20.4;  linggango_tweaks 7.35;  
  gnetum 2.5.1+1.20.1-forge;  collections_of_optimizations 5.33;  oculus 1.8.5;  ;  whatslaggin 1.0.2;  

RECORDING
  stack sampler every 5 ms: 12,437 render-thread, 1,186 server-thread samples (server only while ticking)
  JFR on (cpu, allocation, locks, file io, class loading, safepoints, exceptions): 1,267 CPU samples, 16,355 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
