Spark : comment lire un rapport de profiler
Décrypter la structure d'un rapport Spark : arbre d'appels, répartition du temps, trouver le coupable et schémas de charge typiques.
Mis à jour le 13 août 2026
Capturer un profil — Spark. Voici comment comprendre le résultat.
Ce que vous voyez à l'ouverture du lien
Un arbre d'appels avec des pourcentages. En haut se trouve le thread principal du serveur ; en dessous, ce qui compose son travail.
Vous devez lire de haut en bas en suivant la branche la plus épaisse jusqu'à voir un nom familier : un plugin, un mod ou un système vanilla.
Schémas typiques
| Branche avec une part élevée | Ce que cela signifie |
|---|---|
net.minecraft.world.entity | Trop d'entités — Mobs |
Villager, Brain, GoalSelector | Villageois et pathfinding — Villages |
ChunkMap, ServerChunkCache, ChunkGenerate | Génération de chunks — Prégénération |
HopperBlockEntity | Hopper — Fermes |
RedstoneTorch, TickNextTick | Redstone — Lag de redstone |
| Nom du plugin | Plugin — Un plugin casse le serveur |
GC, SafepointBlocker | Garbage collection — GC |
Les pourcentages sont trompeurs
100 % dans le rapport correspond à tout le temps d'exécution, y compris le temps d'inactivité. Ne regardez pas seulement la part, mais aussi le temps absolu par tick, et comparez-le au MSPT — TPS.
Coordonnées
Pour les entités et les blocs, Spark affiche les positions. C'est une adresse toute prête qui vous indique où aller regarder — en général, vous y trouverez la ferme d'un joueur précis.
Mémoire
/spark heapsummary montre ce qui occupe le tas : un nombre croissant d'objets provenant d'un même plugin entre deux snapshots est une fuite — Mémoire.
