WhatsLaggin report (manual)  1m03s recorded, ended 2026-10-22 15:09:34
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, 248 entities loaded

VERDICT
  366 fps average (2.73 ms per frame), 1% low 66 fps, 0.1% low 42 fps.
  CPU-BOUND: the render thread is busy for 2.68 ms of each frame; the GPU wait is only 0.053 ms. Cutting render-thread work raises FPS directly.
  14 stutters over 20 ms (13.3 per minute), worst 54 ms. Biggest cause: whole-process stall.

WHAT TO FIX (ranked by time lost per second of play)
  1. [cpu] immediatelyfast costs 0.32 ms per frame on the render thread
       12% of render-thread CPU time, mostly in world, 19% in its own code (rest is vanilla/library code it called)
       63%  net.raphimc.immediatelyfast.feature.core.BatchableBufferSource.endLastBatch:105   <- LevelRenderer.renderLevel:1228
               hot: net.raphimc.immediatelyfast.feature.core.BatchableBufferSource.endBatch:135 (53%), executing GL15C.nglBufferSubData (34%)
       20%  net.raphimc.immediatelyfast.feature.core.BatchableBufferSource.endBatch:116   <- com.unusualmodding.opposing_force.client.particles.lightning.LightningParticle.render:178
               hot: net.raphimc.immediatelyfast.feature.core.BatchableBufferSource.endBatch:135 (81%), executing GL11C.glBindTexture (9.0%)
       7.0%  net.raphimc.immediatelyfast.feature.core.BatchableBufferSource.endBatch:135   <- LevelRenderer.renderLevel:1341
               hot: net.raphimc.immediatelyfast.feature.core.BatchableBufferSource.endBatch:135 (15%), executing GL15C.nglBufferSubData (13%)
       removing this cost entirely: about 366 -> 415 fps
  2. [cpu] collections_of_optimizations costs 0.22 ms per frame on the render thread
       8.3% of render-thread CPU time, mostly in world, 91% in its own code (rest is vanilla/library code it called)
       29%  com.misanthropy.collections_of_optimizations.core.GeckoFastCube.tryRender:77   <- software.bernie.geckolib.renderer.GeoRenderer.renderCube:533
               executing BufferBuilder.push:5600 (6.2%)
       13%  com.github.L_Ender.lionfishapi.client.model.tools.AdvancedModelBox.coo$renderThroughWriter:620 [mixin handler from com.misanthropy.collections_of_optimizations.mixin.lionfishapi.MixinLionfishModelBoxRender]   <- com.github.L_Ender.lionfishapi.client.model.tools.AdvancedModelBox.doRender
               hot: com.misanthropy.collections_of_optimizations.core.CitadelModelVertices.emit:69 (78%), executing BufferBuilder.push:5600 (1.5%)
       9.1%  KeyframeAnimations.coo$leanAnimate:537 [mixin wrapMethod from com.misanthropy.collections_of_optimizations.mixin.vanilla.MixinKeyframeAnimations]   <- KeyframeAnimations.animate
               hot: HierarchicalModel.coo$cachePartLookup:535 [mixin wrapMethod from com.misanthropy.collections_of_optimizations.mixin.vanilla.MixinHierarchicalModelParts] (32%), executing Object2ObjectOpenHashMap.get:317 (7.5%)
       removing this cost entirely: about 366 -> 398 fps
  3. [cpu] geckolib costs 0.21 ms per frame on the render thread
       7.8% of render-thread CPU time, mostly in world, 67% in its own code (rest is vanilla/library code it called)
       93%  software.bernie.geckolib.renderer.GeoEntityRenderer.render:157   <- EntityRenderDispatcher.mixinextras$bridge$m_7392_$80
               hot: software.bernie.geckolib.util.RenderUtils.rotateMatrixAroundCube:61 (9.9%), executing PoseStack.mulPose:50 (24%)
       6.8%  TextureManager.wrapAnimatableTexture:1524 [mixin handler from software.bernie.geckolib.mixin.client.TextureManagerMixin]   <- TextureManager.getTexture
               hot: software.bernie.geckolib.cache.texture.AnimatableTexture.load:46 (1.5%), executing HashMap.hash (92%)
       removing this cost entirely: about 366 -> 396 fps
  4. [tick] Each client tick takes 6.56 ms
       20 ticks a second run inline on the render thread, so 20 frames a second each take 6.56 ms longer than the rest (uneven frame pacing).
       collections_of_optimizations 0.63 ms per tick
       linggango_tweaks 0.38 ms per tick
       pehkui 0.38 ms per tick
       goety 0.15 ms per tick
       punchy 0.15 ms per tick
  5. [cpu] embeddium costs 0.13 ms per frame on the render thread
       4.8% of render-thread CPU time, mostly in world, 76% in its own code (rest is vanilla/library code it called)
       33%  me.jellysquid.mods.sodium.client.util.sorting.VertexSorters$AbstractVertexSorter.sort:29   <- BufferBuilder.putSortedQuadIndices:6098
               hot: me.jellysquid.mods.sodium.client.util.sorting.InsertionSort.insertionSort:25 (30%)
       22%  net.caffeinemc.mods.sodium.api.math.MatrixHelper.rotateZYX:126   <- ModelPart.translateAndRotate:3614
               executing Matrix4f.rotateAffineZYX:5536 (62%)
       14%  me.jellysquid.mods.sodium.client.render.SodiumWorldRenderer.drawChunkLayer:284   <- LevelRenderer.renderChunkLayer:40702
               hot: me.jellysquid.mods.sodium.client.render.chunk.terrain.TerrainRenderPass.startDrawing:62 (29%), executing JNI.callPV (16%)
       removing this cost entirely: about 366 -> 384 fps
  6. [cpu] flerovium costs 0.12 ms per frame on the render thread
       4.7% of render-thread CPU time, mostly in world, 81% in its own code (rest is vanilla/library code it called)
       70%  ModelPart.onRender:1031 [mixin handler from com.moepus.flerovium.mixins.Entity.ModelPartMixin]   <- ModelPart.render
               hot: com.moepus.flerovium.functions.FastEntityRenderer.renderCuboids:123 (44%), executing BufferBuilder.push:5600 (6.2%)
       14%  ItemRenderer.onRrenderModelLists:1054 [mixin modify from com.moepus.flerovium.mixins.Item.ItemRendererMixin]   <- ItemRenderer.render:147
               hot: com.moepus.flerovium.functions.FastSimpleBakedModelRenderer.renderQuadList:140 (40%), executing ImmutableCollections$ListItr.next (4.9%)
       9.4%  ItemEntityRenderer.skipSuperRender:550 [mixin redirect from com.moepus.flerovium.mixins.Item.ItemEntityRenderMixin]   <- ItemEntityRenderer.render:99
               executing ASMEventHandler.invoke:55 (28%)
       removing this cost entirely: about 366 -> 383 fps
  7. [world] minecraft:item (entity render) costs 33 ms every second
       598,226 calls, 4 us each, worst 1.14 ms at 2536, 310, 764
  8. [cpu] linggango_tweaks costs 0.068 ms per frame on the render thread
       2.5% of render-thread CPU time, mostly in world, 48% in its own code (rest is vanilla/library code it called)
       11%  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 (31%), executing VertexConsumer.color:47 (26%)
       9.9%  snownee.jade.util.ClientProxy.onClientTick:163   <- Minecraft.tick:1875
               hot: snownee.jade.impl.config.PluginConfig.get:55 (16%), executing HashBiMap.seekByValue:252 (6.5%)
       9.0%  ItemEntityRenderer.linggango$layDown$mixinextras$bridge$17 [mixin wrapOperation from com.misanthropy.linggango.linggango_tweaks.mixin.client.ItemPhysicsMixins$RendererMixin]   <- ItemEntityRenderer.render:66
               hot: ItemEntityRenderer.linggango$layDown:1616 [mixin wrapOperation from com.misanthropy.linggango.linggango_tweaks.mixin.client.ItemPhysicsMixins$RendererMixin] (32%), executing PoseStack.mulPose:50 (57%)
       removing this cost entirely: about 366 -> 375 fps
  9. [stutter] Stutter: whole-process stall
       2 frames over 20 ms, worst 54 ms, 92 ms of extra frame time per minute
 10. [stutter] Stutter: unexplained (client tick)
       2 frames over 20 ms, worst 22 ms, 36 ms of extra frame time per minute

FRAMES
  23,108 frames   p50 2.03 ms   p95 7.14 ms   p99 12 ms   worst 54 ms
  per frame:  tasks 0.032 ms  client tick 0.36 ms  render 2.22 ms  present 0.055 ms  other 0.064 ms
  inside those:  swap 0.053 ms  world 2.05 ms  hud 0.14 ms  screen 0.002 ms
  client tick: 6.56 ms per tick, 20.0 ticks per second
  GPU time per pass (mean per frame, each pass also holds what mods drew at the stage before it):
    0.039 ms  2.4%  sky and frame setup   (p95 0.040 ms)
    0.032 ms  1.9%  solid terrain   (p95 0.068 ms)
    0.027 ms  1.6%  cutout mipped terrain   (p95 0.029 ms)
    0.000 ms  <0.1%  cutout terrain   (p95 0.003 ms)
    0.49 ms  30%  entities   (p95 1.25 ms)
    0.30 ms  18%  block entities   (p95 1.67 ms)
    0.058 ms  3.6%  translucent terrain   (p95 0.30 ms)
    0.000 ms  <0.1%  tripwire   (p95 0.001 ms)
    0.005 ms  0.3%  particles   (p95 0.012 ms)
    0.038 ms  2.3%  weather and clouds   (p95 0.042 ms)
    0.007 ms  0.5%  end of level render   (p95 0.067 ms)
    0.27 ms  16%  hand and post effects   (p95 0.40 ms)
    0.19 ms  11%  hud   (p95 0.32 ms)
    0.18 ms  11%  screens and rest of frame   (p95 0.92 ms)

RENDER THREAD CPU BY MOD (sampled; excludes GPU wait, fps limiter and blocked time)
  12,605 samples: CPU work 98%, GPU wait 2.3%, limiter 0.0%, blocked on other threads <0.1%
  mods caused 85% of render-thread CPU work, vanilla/forge/driver the rest
  12% of CPU work is inside OpenGL calls (driver work or a GPU sync), mostly glBufferSubData; the mod that made the call is charged for it below
  ms/frame  share  own   mod                          mostly in
  0.32 ms   12%    19%   immediatelyfast              world
  0.29 ms   11%    92%   minecraft (vanilla)          world
  0.22 ms   8.3%   91%   collections_of_optimizations world
  0.21 ms   7.8%   67%   geckolib                     world
  0.13 ms   4.8%   76%   embeddium                    world
  0.12 ms   4.7%   81%   flerovium                    world
  0.12 ms   4.3%   100%  forge (loader, events)       world
  0.068 ms  2.5%   48%   linggango_tweaks             world
  0.054 ms  2.0%   25%   opposing_force               world
  0.049 ms  1.8%   96%   pehkui                       world
  0.047 ms  1.8%   12%   oculus                       world
  0.045 ms  1.7%   22%   goety                        world
  0.043 ms  1.6%   26%   gnetum                       hud
  0.042 ms  1.6%   74%   punchy                       world
  0.040 ms  1.5%   49%   cataclysm                    world
  0.88 ms   168 more below 0.5% each

HOT PATHS (where each mod's render-thread time goes; SRG names translated; <- = called from)
  immediatelyfast  0.32 ms/frame, 12%
    63%   net.raphimc.immediatelyfast.feature.core.BatchableBufferSource.endLastBatch:105  <- LevelRenderer.renderLevel:1228
          hot net.raphimc.immediatelyfast.feature.core.BatchableBufferSource.endBatch:135 53%
          executing GL15C.nglBufferSubData 34%
    20%   net.raphimc.immediatelyfast.feature.core.BatchableBufferSource.endBatch:116  <- com.unusualmodding.opposing_force.client.particles.lightning.LightningParticle.render:178
          hot net.raphimc.immediatelyfast.feature.core.BatchableBufferSource.endBatch:135 81%
          executing GL11C.glBindTexture 9.0%
    7.0%  net.raphimc.immediatelyfast.feature.core.BatchableBufferSource.endBatch:135  <- LevelRenderer.renderLevel:1341
          hot net.raphimc.immediatelyfast.feature.core.BatchableBufferSource.endBatch:135 15%
          executing GL15C.nglBufferSubData 13%
  minecraft (vanilla)  0.29 ms/frame, 11%, hottest vanilla methods:
    12%   EntityRenderDispatcher.getRenderer:530  <- me.decce.ixeris.RenderThreadStarter.run:39
    8.5%  LevelRenderer.renderLevel:1198  <- me.decce.ixeris.RenderThreadStarter.run:39
          executing Iterators$1.hasNext:140 22%
    8.0%  Entity.shouldRender:1562  <- me.decce.ixeris.RenderThreadStarter.run:39
  collections_of_optimizations  0.22 ms/frame, 8.3%
    29%   com.misanthropy.collections_of_optimizations.core.GeckoFastCube.tryRender:77  <- software.bernie.geckolib.renderer.GeoRenderer.renderCube:533
          executing BufferBuilder.push:5600 6.2%
    13%   com.github.L_Ender.lionfishapi.client.model.tools.AdvancedModelBox.coo$renderThroughWriter:620 [mixin handler from com.misanthropy.collections_of_optimizations.mixin.lionfishapi.MixinLionfishModelBoxRender]  <- com.github.L_Ender.lionfishapi.client.model.tools.AdvancedModelBox.doRender
          hot com.misanthropy.collections_of_optimizations.core.CitadelModelVertices.emit:69 78%
          executing BufferBuilder.push:5600 1.5%
    9.1%  KeyframeAnimations.coo$leanAnimate:537 [mixin wrapMethod from com.misanthropy.collections_of_optimizations.mixin.vanilla.MixinKeyframeAnimations]  <- KeyframeAnimations.animate
          hot HierarchicalModel.coo$cachePartLookup:535 [mixin wrapMethod from com.misanthropy.collections_of_optimizations.mixin.vanilla.MixinHierarchicalModelParts] 32%
          executing Object2ObjectOpenHashMap.get:317 7.5%
  geckolib  0.21 ms/frame, 7.8%
    93%   software.bernie.geckolib.renderer.GeoEntityRenderer.render:157  <- EntityRenderDispatcher.mixinextras$bridge$m_7392_$80
          hot software.bernie.geckolib.util.RenderUtils.rotateMatrixAroundCube:61 9.9%
          executing PoseStack.mulPose:50 24%
    6.8%  TextureManager.wrapAnimatableTexture:1524 [mixin handler from software.bernie.geckolib.mixin.client.TextureManagerMixin]  <- TextureManager.getTexture
          hot software.bernie.geckolib.cache.texture.AnimatableTexture.load:46 1.5%
          executing HashMap.hash 92%
  embeddium  0.13 ms/frame, 4.8%
    33%   me.jellysquid.mods.sodium.client.util.sorting.VertexSorters$AbstractVertexSorter.sort:29  <- BufferBuilder.putSortedQuadIndices:6098
          hot me.jellysquid.mods.sodium.client.util.sorting.InsertionSort.insertionSort:25 30%
    22%   net.caffeinemc.mods.sodium.api.math.MatrixHelper.rotateZYX:126  <- ModelPart.translateAndRotate:3614
          executing Matrix4f.rotateAffineZYX:5536 62%
    14%   me.jellysquid.mods.sodium.client.render.SodiumWorldRenderer.drawChunkLayer:284  <- LevelRenderer.renderChunkLayer:40702
          hot me.jellysquid.mods.sodium.client.render.chunk.terrain.TerrainRenderPass.startDrawing:62 29%
          executing JNI.callPV 16%
  flerovium  0.12 ms/frame, 4.7%
    70%   ModelPart.onRender:1031 [mixin handler from com.moepus.flerovium.mixins.Entity.ModelPartMixin]  <- ModelPart.render
          hot com.moepus.flerovium.functions.FastEntityRenderer.renderCuboids:123 44%
          executing BufferBuilder.push:5600 6.2%
    14%   ItemRenderer.onRrenderModelLists:1054 [mixin modify from com.moepus.flerovium.mixins.Item.ItemRendererMixin]  <- ItemRenderer.render:147
          hot com.moepus.flerovium.functions.FastSimpleBakedModelRenderer.renderQuadList:140 40%
          executing ImmutableCollections$ListItr.next 4.9%
    9.4%  ItemEntityRenderer.skipSuperRender:550 [mixin redirect from com.moepus.flerovium.mixins.Item.ItemEntityRenderMixin]  <- ItemEntityRenderer.render:99
          executing ASMEventHandler.invoke:55 28%
  linggango_tweaks  0.068 ms/frame, 2.5%
    11%   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 31%
          executing VertexConsumer.color:47 26%
    9.9%  snownee.jade.util.ClientProxy.onClientTick:163  <- Minecraft.tick:1875
          hot snownee.jade.impl.config.PluginConfig.get:55 16%
          executing HashBiMap.seekByValue:252 6.5%
    9.0%  ItemEntityRenderer.linggango$layDown$mixinextras$bridge$17 [mixin wrapOperation from com.misanthropy.linggango.linggango_tweaks.mixin.client.ItemPhysicsMixins$RendererMixin]  <- ItemEntityRenderer.render:66
          hot ItemEntityRenderer.linggango$layDown:1616 [mixin wrapOperation from com.misanthropy.linggango.linggango_tweaks.mixin.client.ItemPhysicsMixins$RendererMixin] 32%
          executing PoseStack.mulPose:50 57%
  opposing_force  0.054 ms/frame, 2.0%
    42%   com.unusualmodding.opposing_force.client.particles.lightning.LightningParticle.render:177  <- ParticleEngine.render:3248
          hot com.unusualmodding.opposing_force.client.particles.lightning.LightningRenderer$BoltInstance.lambda$render$0:149 94%
          executing VertexConsumer.color:47 93%
    30%   com.unusualmodding.opposing_force.client.renderer.SkyvernSegmentRenderer.render:28  <- EntityRenderDispatcher.mixinextras$bridge$m_7392_$80
          hot com.unusualmodding.opposing_force.client.models.entity.skyvern.SkyvernBodyModel.setupAnim:80 51%
          executing Collection.stream 11%
    4.4%  com.unusualmodding.opposing_force.network.LightningSyncPacket.handle:100  <- BlockableEventLoop.lambda$submitAsync$0:67
          hot com.unusualmodding.opposing_force.client.particles.lightning.LightningBoltData$BoltQuads.addQuad:301 45%
          executing ArrayList.addAll 45%

STUTTERS (frames over 20 ms, grouped by what was happening during them)
  frames  worst     extra/min   cause
  2       54 ms     92 ms       whole-process stall
  1       42 ms     38 ms       GC pause (G1 Remark/Cleanup, end of a concurrent mark cycle)
  2       22 ms     36 ms       unexplained (client tick)
  1       23 ms     20 ms       unexplained (render)
  1       20 ms     17 ms       simplyswords: net.sweenus.simplyswords.api.IncapacitatingStatusEffectRegistry.isIncapacitated

  worst frames:
  15:08:38.272  54 ms    client tick 47 ms     whole-process stall
                             every thread was stopped (OS scheduling, paging, or a JVM pause JFR did not see)
  15:09:20.005  47 ms    render 47 ms          whole-process stall
                             every thread was stopped (OS scheduling, paging, or a JVM pause JFR did not see)
  15:09:08.953  42 ms    render 41 ms          GC pause (G1 Remark/Cleanup, end of a concurrent mark cycle)
                             38 ms of the frame was a stop-the-world collection
  15:08:32.443  23 ms    render 13 ms          unexplained (render)
                             4 samples, no single owner
  15:08:40.040  22 ms    client tick 17 ms     unexplained (client tick)
                             5 samples, no single owner
  15:08:34.990  20 ms    client tick 10 ms     unexplained (client tick)
                             4 samples, no single owner
  15:08:34.840  20 ms    client tick 12 ms     simplyswords: net.sweenus.simplyswords.api.IncapacitatingStatusEffectRegistry.isIncapacitated
                             2 of 4 samples, hottest line einstein.subtle_effects.init.ModEntityTickers.lambda$init$59:339

MEMORY AND GC
  allocated 27.1 GB (438 MB/s, exact, all threads), max heap 10.0 GB
  8 GC pauses (0 old/full), 141 ms paused (0.2%), worst 43 ms, one every 7.9 s
  longest pauses:
    15:09:19.969  43 ms  G1 Young Generation, G1 Evacuation Pause
    15:08:38.232  36 ms  G1 Young Generation, G1 Evacuation Pause
  1 Remark/Cleanup pauses (concurrent mark cycles, not in the count above), 38 ms paused, worst 38 ms
  heap after GC 4.3 GB (43% of max, old garbage stays until the next marking cycle), changed by -280091456 B over the recording
  by mod (JFR samples scaled to each thread's exact allocation; 100% of bytes covered):
    69 MB/s   15%    geckolib                  1,272 samples
        14%  software.bernie.geckolib.renderer.GeoRenderer.renderCubesOfBone:268 -> Matrix4f
        10%  software.bernie.geckolib.core.animation.AnimationController.getAnimationPointAtTick:885 -> AnimationPoint
        9.8%  software.bernie.geckolib.renderer.GeoRenderer.renderCubesOfBone:268 -> Matrix3f
    54 MB/s   12%    immediatelyfast           1,000 samples
        48%  net.raphimc.immediatelyfast.feature.core.BatchableBufferSource.endBatch:135 -> Vector3f
        13%  net.raphimc.immediatelyfast.feature.core.BatchableBufferSource.lambda$addNewFallbackBuffer$1:188 -> [J
        6.6%  net.raphimc.immediatelyfast.feature.core.BatchableBufferSource.endBatch:135 -> Vector3f;
    51 MB/s   11%    minecraft (vanilla)       1,586 samples
        11%  PoseStack.pushPose:541 -> Matrix4f
        11%  LivingEntityRenderer.render:130 -> CallbackInfo
        8.2%  PoseStack.pushPose:541 -> Matrix3f
    23 MB/s   5.1%   embeddium                 583 samples
        20%  me.jellysquid.mods.sodium.client.util.sorting.AbstractSort.createIndexBuffer:6 -> [I
        17%  me.jellysquid.mods.sodium.client.util.sorting.RadixSort.radixSortDescending:12 -> [I
        17%  me.jellysquid.mods.sodium.client.util.sorting.VertexSorters$AbstractVertexSorter.mergeSort:33 -> [F
    21 MB/s   4.6%   opposing_force            393 samples
        19%  com.unusualmodding.opposing_force.client.models.entity.skyvern.SkyvernBodyModel.setupAnim:80 -> ReferencePipeline$Head
        6.8%  com.unusualmodding.opposing_force.client.models.entity.skyvern.SkyvernBodyModel.setupAnim:80 -> ReferencePipeline$7
        5.2%  com.unusualmodding.opposing_force.client.models.entity.skyvern.SkyvernBodyModel.setupAnim:80 -> StreamSpliterators$WrappingSpliterator
    17 MB/s   3.9%   pehkui                    324 samples
        32%  virtuoel.pehkui.api.ScaleData.calculateScaleForTick:309 -> Float
        12%  EntityRenderDispatcher.pehkui$render$before:9029 [mixin handler from virtuoel.pehkui.mixin.client.compat115plus.EntityRenderDispatcherMixin] -> Matrix4f
        11%  virtuoel.pehkui.api.TypedScaleModifier.getType -> 211348027
    17 MB/s   3.7%   jdk                       419 samples
        100%  IdentityHashMap$KeySet.iterator -> IdentityHashMap$KeyIterator
    16 MB/s   3.6%   legendary_monsters        331 samples
        11%  net.miauczel.legendary_monsters.entity.client.Model.BeheadedKnightModel.setupAnim:192 -> ReferencePipeline$Head
    14 MB/s   3.0%   flerovium                 253 samples
        33%  com.moepus.flerovium.functions.FastEntityRenderer.render:106 -> CallbackInfo
        24%  com.moepus.flerovium.functions.FastSimpleBakedModelRenderer.renderQuadList:137 -> ImmutableCollections$ListItr
        12%  ItemEntityRenderer.skipSuperRender:549 [mixin redirect from com.moepus.flerovium.mixins.Item.ItemEntityRenderMixin] -> Style
    8 MB/s    1.9%   lionfishapi               155 samples
        39%  com.github.L_Ender.lionfishapi.client.model.tools.AdvancedModelBox.render:321 -> Matrix4f
        32%  com.github.L_Ender.lionfishapi.client.model.tools.AdvancedModelBox.render:321 -> Matrix3f
        16%  com.github.L_Ender.lionfishapi.client.model.tools.AdvancedModelBox.render:324 -> ObjectArrayList$1

INTEGRATED SERVER (single player; this is world lag, not FPS)
  1,264 ticks, mspt mean 13 ms, p50 12 ms, p95 23 ms, worst 212 ms, 3 over 50 ms
    1.05 ms/tick  7.9%   minecraft (vanilla)       
    0.86 ms/tick  6.5%   cataclysm                 com.github.L_Ender.cataclysm.entity.AnimationMonster.BossMonsters.Amethyst_Crab_Entity.tick:178
    0.85 ms/tick  6.4%   radium                    EntitySectionStorage.forEachInBox:555 [mixin handler from me.jellysquid.mods.lithium.mixin.entity.fast_retrieval.SectionedEntityCacheMixin]
    0.82 ms/tick  6.1%   collections_of_optimizations ServerLevel.coo$growthTick:10142 [mixin modifyExpressionValue from com.misanthropy.collections_of_optimizations.mixin.immersiveweathering.MixinServerLevelGrowthTick]
    0.61 ms/tick  4.6%   goety                     Projectile.canHitEntity:2529 [mixin handler from com.Polarice3.Goety.mixin.ProjectileMixin]
    0.55 ms/tick  4.1%   forge (loader, events)    
    0.52 ms/tick  3.9%   pehkui                    Entity.pehkui$tick:38737 [mixin handler from virtuoel.pehkui.mixin.EntityMixin]
    0.38 ms/tick  2.8%   terramity                 net.mcreator.terramity.entity.RoyalGnomeEntity.baseTick:158

THREADS (exact CPU per thread group; 'runs' = what JFR saw executing on it)
  the game used 1.44 of 16 cores, whole machine 25% busy
  cores  n    allocated   group                            runs
  0.96   1    22.5 GB     Render thread                    collections_of_optimizations 15%, minecraft 8.2%, flerovium 7.8%
  0.24   1    3.1 GB      Server thread                    minecraft 13%, collections_of_optimizations 7.2%, radium 6.4%
  0.07   10   21 MB       Flywheel Task Executor ##        flywheel 100%
  0.03   6    777 MB      AsyncParticleTickWorker-#        asyncparticles 64%, particle_core 13%, ponder 9.0%
  0.02   1    977 KB      whatslaggin-threads              too few samples
  0.02   1    279 MB      JFR Event Stream #               no JFR samples (idle or native)

ENTITIES, BLOCK ENTITIES, SCREENS (exact timings; per second of recording)
  entity render:
    33 ms/s    9,464/s  4 us     minecraft:item                              worst 1.14 ms at 2536, 310, 764
    19 ms/s    1,302/s  14 us    terramity:royal_gnome                       worst 0.89 ms at 2551, 310, 805
    18 ms/s    731/s    24 us    terramity:gob                               worst 0.79 ms at 2528, 310, 810
    14 ms/s    259/s    54 us    cataclysm:ignited_revenant                  worst 4.07 ms at 2500, 310, 797
    13 ms/s    551/s    24 us    terramity:uvogre                            worst 3.73 ms at 2551, 310, 788
    13 ms/s    317/s    41 us    cataclysm:amethyst_crab                     worst 2.82 ms at 2521, 310, 810
    12 ms/s    251/s    46 us    terramity:gundalf                           worst 0.50 ms at 2508, 310, 755
    11 ms/s    2,474/s  4 us     opposing_force:skyvern_segment              worst 5.12 ms at 2495, 316, 843
  entity tick:
    12 ms/s    20/s     618 us   minecraft:player                            worst 1.24 ms at 2527, 310, 778
    7.77 ms/s  1,676/s  5 us     minecraft:item                              worst 3.37 ms at 2542, 310, 768
    7.54 ms/s  243/s    31 us    terramity:royal_gnome                       worst 2.95 ms at 2501, 310, 799
    4.15 ms/s  284/s    15 us    cataclysm:earthquake                        worst 2.51 ms at 2543, 310, 807
    2.25 ms/s  20/s     113 us   alexscaves:tremorsaurus                     worst 4.90 ms at 2538, 310, 767
    2.18 ms/s  60/s     37 us    cataclysm:amethyst_crab                     worst 0.57 ms at 2526, 310, 800
  server entity tick:
    19 ms/s    249/s    75 us    terramity:royal_gnome                       worst 14 ms at 2537, 310, 803
    9.16 ms/s  306/s    30 us    cataclysm:earthquake                        worst 4.21 ms at 2533, 309, 781
    7.21 ms/s  1,597/s  5 us     minecraft:item                              worst 3.69 ms at 2512, 310, 810
    6.09 ms/s  37/s     165 us   terramity:gob                               worst 2.55 ms at 2547, 310, 799
    5.41 ms/s  58/s     94 us    cataclysm:amethyst_crab                     worst 3.35 ms at 2537, 310, 805
    4.39 ms/s  58/s     76 us    cataclysm:aptrgangr                         worst 1.23 ms at 2569, 307, 759
    3.72 ms/s  425/s    9 us     opposing_force:skyvern_segment              worst 0.60 ms at 2495, 317, 846
    3.61 ms/s  35/s     102 us   mythsandlegends:possessed_armor             worst 3.35 ms at 2546, 310, 777
  screen:
    0.84 ms/s  10/s     83 us    net.minecraft.client.gui.screens.ChatScreen worst 0.86 ms

JVM AND I/O
  class loads over 1 ms: 2 (2.99 ms), on the render/server thread 2 (2.99 ms)
  non-GC safepoints: 16 ms total (last: ThreadDump)
  log output: 0.1 lines/s
  exceptions thrown: 14.3/s, top: 7.2/s  CommandSyntaxException from terramity at net.mcreator.terramity.GobWaveEffect.lambda$createShockwave$0:51

MOD VERSIONS (mods named in the findings)
  immediatelyfast 1.5.5+1.20.4;  collections_of_optimizations 5.33;  geckolib 4.8.4;  
  embeddium 0.3.32-beta.113-dirty+mc1.20.1;  flerovium 1.2.19;  linggango_tweaks 7.36;  
  pehkui 3.8.2+1.20.1-forge;  goety 2.5.58.4;  punchy 2.8c;  ;  

RECORDING
  stack sampler every 5 ms: 12,605 render-thread, 3,212 server-thread samples (server only while ticking)
  JFR on (cpu, allocation, locks, file io, class loading, safepoints, exceptions): 3,817 CPU samples, 15,820 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
