Quand on joue à Minecraft, la stabilité d’un serveur est un enjeu majeur, notamment pour les communautés actives ou les environnements moddés. Le mod Spark s’impose comme un outil incontournable pour diagnostiquer les problèmes de performances d’un serveur ou d’un client Minecraft. Conçu pour être léger, intuitif et rapide à utiliser, il permet aux administrateurs de comprendre les causes d’une baisse de fluidité ou d’une montée en charge du CPU.
Sommaire
Les caractéristiques de Spark
Une analyse précise du processeur avec le CPU Profiler
La fonctionnalité phare de Spark est sans doute son profiler CPU, qui s’appuie sur une méthode statistique pour surveiller l’activité du serveur et générer un graphe d’appels (call graph) accessible via une interface en ligne. En une trentaine de secondes, Spark est capable de produire des résultats exploitables, permettant de localiser précisément les fonctions responsables de ralentissements ou de pics d’utilisation du processeur.
Aucune configuration complexe n’est requise. Une fois installé, Spark peut être lancé directement et propose plusieurs options de personnalisation, comme le ciblage de threads spécifiques ou l’enregistrement de périodes anormalement longues. L’analyse est facilitée par une structure en arbre claire, rendant l’interprétation des résultats accessible même sans connaissances approfondies en développement.
Un outil de diagnostic mémoire complet
Spark ne se limite pas à l’analyse du CPU. Il offre également des outils de diagnostic mémoire utiles pour détecter les fuites ou les surconsommations de mémoire :
- Heap Summary : un aperçu simple de la mémoire utilisée par la JVM, avec le nombre d’instances par classe.
- Heap Dump : capture complète de la mémoire sous format HPROF, exportable pour analyse dans des outils externes.
- GC Monitoring : suivi de l’activité du ramasse-miettes (Garbage Collector), avec des indicateurs sur la durée et la fréquence des collectes, ainsi que la mémoire libérée à chaque cycle.
Ces informations permettent d’identifier les causes des freezes ou des accumulations anormales de données, et d’ajuster les paramètres de la JVM en conséquence.
Suivi de l’état de santé du serveur
Spark propose un tableau de bord synthétique regroupant les indicateurs clés du serveur :
- TPS (ticks par seconde), avec une précision supérieure à la commande /tps classique.
- Durées de ticks : minimum, maximum et moyenne.
- Utilisation CPU : par le processus Minecraft et par l’ensemble du système.
- Mémoire utilisée : RAM consommée par le serveur.
- Utilisation du disque : espace libre et occupé.
En plus de ces mesures globales, Spark peut détecter des anomalies individuelles en signalant tout tick dont la durée dépasse un seuil défini. Cette surveillance au tick près permet d’identifier les événements spécifiques à l’origine des ralentissements.
Détecter et comprendre les pics de lag
Les pics de latence surviennent lorsqu’un ou plusieurs ticks du serveur prennent plus de temps que la normale à s’exécuter. Ces ralentissements peuvent apparaître à intervalles réguliers – par exemple un tick sur vingt – ou de manière sporadique, toutes les quelques minutes. Ils sont généralement liés à des actions de joueurs, comme des commandes massives ou l’utilisation de mods complexes.
Ce type de problème est difficile à détecter à l’aide d’une analyse classique, car les données collectées sont souvent moyennées, masquant ainsi l’impact réel du ou des ticks fautifs. Heureusement, Spark propose deux outils puissants pour contourner ce problème et identifier précisément l’origine de ces ralentissements.
Étape 1 : Utiliser la commande /spark tickmonitor
pour repérer les pics
La première étape consiste à surveiller le temps d’exécution de chaque tick afin de détecter ceux qui dépassent la moyenne.
La commande /spark tickmonitor
permet d’activer ce suivi. Elle fonctionne de la manière suivante :
- Elle calcule une moyenne du temps d’exécution des ticks du serveur.
- Elle compare chaque tick suivant à cette moyenne.
- Si la durée d’un tick dépasse un certain seuil, un message d’alerte est affiché dans le chat.
Par défaut, ce seuil est fixé à 100 %, c’est-à-dire qu’un tick sera signalé s’il prend deux fois plus de temps que la moyenne.
Personnaliser le seuil de déclenchement
Il est possible d’utiliser un seuil absolu en millisecondes, ce qui est souvent plus efficace pour les cas spécifiques. Par exemple :
bashCopierModifier/spark tickmonitor --threshold-tick 50

Cette commande signalera tout tick prenant plus de 50 ms, soit la limite à partir de laquelle Minecraft commence à “rattraper” le retard, causant une impression de lag.
Si les ralentissements ne sont pas détectés à ce seuil, vous pouvez le baisser pour plus de sensibilité :
bashCopierModifier/spark tickmonitor --threshold-tick 30
Astuce : Lorsqu’un pic est signalé dans le chat, essayez de le relier à ce qui se passe en jeu à ce moment précis. Cela peut être un changement de dimension, une commande lourde ou un événement déclenché par un joueur.
Étape 2 : Utiliser /spark profiler
avec l’option --only-ticks-over
pour isoler les ticks problématiques
Une fois que vous avez identifié un seuil réaliste à l’aide de tickmonitor
, vous pouvez lancer une session de profilage ciblée avec :
bashCopierModifier/spark profiler --only-ticks-over [valeur]
Par exemple :
bashCopierModifier/spark profiler --only-ticks-over 150
Cela signifie que Spark n’enregistrera que les ticks dont la durée dépasse 150 millisecondes. Ainsi, seuls les ticks réellement problématiques seront inclus dans l’analyse, ce qui évite d’avoir à chercher une aiguille dans une botte de foin parmi des milliers de données normales.
Choisir un seuil pertinent
Il est conseillé d’utiliser une valeur entre 50 et 100 ms pour la plupart des cas, mais cela dépend du type de serveur et de la gravité du lag. Si les ticks problématiques durent plus de 300 ms, il peut être utile d’abaisser le seuil à 150 ms pour capturer un plus grand nombre de cas similaires.
Étape 3 : Analyser le profil généré
Une fois la session de profilage terminée, ouvrez le lien fourni par Spark vers le viewer en ligne. Vous pourrez alors explorer l’arborescence des appels exécutés durant les ticks sélectionnés.
Les fonctions les plus coûteuses en temps de calcul apparaîtront en haut de l’arborescence, souvent en rouge ou orange, ce qui permet de visualiser en un coup d’œil les sections les plus lourdes. Vous pourrez ainsi identifier :
- Le mod ou plugin à l’origine du ralentissement.
- La méthode exacte impliquée.
- Le contexte dans lequel l’appel s’est produit (ex. : génération de chunk, événement de joueur, entités, etc.).
Exemple pratique

Imaginons qu’un joueur utilise WorldEdit pour modifier une grande surface de blocs. En activant /spark tickmonitor
, on constate des ticks atteignant plus de 1000 % au-dessus de la moyenne. Une fois ce comportement confirmé, un profilage avec :
bashCopierModifier/spark profiler --only-ticks-over 150
permet de cibler précisément les appels déclenchés par WorldEdit, confirmant que le mod est responsable des pics.
Pour en savoir plus, vous pouvez consulter la documentation de Spark.
Informations
- Auteur du mod : Iucko
- Versions Minecraft : 1.21.5 – 1.20.6 – 1.19.4 – 1.18.2 – 1.17.1 – 1.16.5 – 1.15.2 – 1.12.2 – 1.7.10
- API : Forge, Neoforge & Fabric
- Lien original : Curseforge
Téléchargement de Spark
Pour jouer avec Forge
Choisissez la version du mod qui correspond à la version de votre jeu Minecraft :
Pour jouer avec Fabric
Choisissez la version du mod qui correspond à la version de votre jeu Minecraft :
Pour jouer avec Neoforge
Choisissez la version du mod qui correspond à la version de votre jeu Minecraft :
Guide d’installation d’un mod sur Minecraft
Si vous souhaitez plus de détails sur la procédure d’installation, consultez notre guide qui explique en détail comment installer un Mod sur Minecraft