Rapport de benchmark
Pointes de tick · IA des mobs
Les pires ticks valent plusieurs fois la moyenne. Le TPS moyen reste bon pendant que les joueurs sentent les à-coups.
- mspt_avg = 27,5 ms
- mspt_p99 = 56,78 ms
- spike_ratio = 2,06 ratio
- sample_count = 93 count
- spike_ticks = 24 count
- spike_window_ticks = 501 count
- spike_threshold_ms = 53,1 ms
- spike_ticks_with_gc = 2 count
- spike_ticks_with_throttle = 0 count
- spike_ticks_with_steal = 0 count
- spike_tick_ms = 3 722,3 ms
- spike_gc_pause_ms = 34,5 ms
- spike_throttled_ms = 0 ms
- spike_sample_interval_ms = 40 ms
- explained_share_threshold = 0,5 ratio
- explained_time_share_threshold = 0,25 ratio
Test le plus faible : Chargement de chunks, 19,32 TPS en moyenne. Les 15 autres tests tiennent au moins 19,68 TPS.
Face aux autres serveurs
Tous les serveurs mesurés comptent ici, rapports privés, anonymes et expirés compris. Chaque serveur compte une fois, avec sa meilleure exécution.
Ce rapport fait mieux que
63 %
des 5 serveurs sous Paper et dérivés en Minecraft 1.21
Score total 106 415 · médiane du groupe 96 794
- Mono-cœur
Mieux que 62 % · 144 009 contre une médiane de 137 527
- Gameplay
Mieux que 80 % · 72 802 contre une médiane de 68 677 · Quart supérieur
- Exploration
Mieux que 0 % · 74 780 contre une médiane de 84 192 · Quart inférieur
- Entités
Mieux que 80 % · 116 040 contre une médiane de 84 011 · Quart supérieur
- Mécaniques
Mieux que 80 % · 46 249 contre une médiane de 42 063 · Quart supérieur
- Matériel
Mieux que 40 % · 44 221 contre une médiane de 50 868
- Mémoire
Mieux que 0 % · 19 442 contre une médiane de 25 490 · Quart inférieur
- Disque
Mieux que 13 % · 40 884 contre une médiane de 55 851 · Quart inférieur
- Multi-cœur
Mieux que 63 % · 97 373 contre une médiane de 71 561
Test par test
Le MSPT moyen (plus bas, mieux) et le TPS de chaque test de tick, face au même groupe, chaque serveur avec la même exécution que ci-dessus. Un test apparaît quand au moins 5 serveurs du groupe l'ont réussi. La barre suit le MSPT.
- Physique des blocs
Mieux que 42 % · MSPT 12,9 ms contre une médiane de 11,5 ms · TPS 20 contre une médiane de 20
- Croissance par poudre d'os
Mieux que 37 % · MSPT 2,4 ms contre une médiane de 1,8 ms · TPS 20 contre une médiane de 20
- Chargement de chunks
Mieux que 22 % · MSPT 7,3 ms contre une médiane de 6,1 ms · TPS 19,3 contre une médiane de 19,7 · Quart inférieur
- Ticking des chunks
Mieux que 38 % · MSPT 16,8 ms contre une médiane de 15,2 ms · TPS 20 contre une médiane de 20
- Explosions
Mieux que 21 % · MSPT 6,9 ms contre une médiane de 4,7 ms · TPS 20 contre une médiane de 19,9 · Quart inférieur
- Entonnoirs (hoppers)
Mieux que 55 % · MSPT 2,6 ms contre une médiane de 2,9 ms · TPS 20 contre une médiane de 19,9
- Mise à jour de lumière
Mieux que 31 % · MSPT 2,4 ms contre une médiane de 2,1 ms · TPS 20 contre une médiane de 20
- IA des mobs
Mieux que 80 % · MSPT 27,5 ms contre une médiane de 110,2 ms · TPS 19,7 contre une médiane de 10 · Quart supérieur
- Redstone
Mieux que 77 % · MSPT 15,4 ms contre une médiane de 21,9 ms · TPS 20 contre une médiane de 20 · Quart supérieur
- Tile entities tickées
Mieux que 80 % · MSPT 3,1 ms contre une médiane de 3,7 ms · TPS 20 contre une médiane de 20 · Quart supérieur
- Sauvegarde du monde
Mieux que 80 % · MSPT 1,3 ms contre une médiane de 1,5 ms · TPS 20 contre une médiane de 20 · Quart supérieur
Scores de la version 8.3.0 du barème. Un groupe de moins de 5 serveurs n'est jamais utilisé. Mis à jour le 1 nov. 2026, 12:40 UTC. Tendances de la communauté · Toutes les mesures par CPU
Ce qu’il faut retenir
Tiré des mesures, jamais estiméConfiguration serveur modifiée
Comparez avec prudence à un serveur réglé par défaut.
- view-distance 6 (défaut 10)
- simulation-distance 4 (défaut 10)
- spawn-limit.monster 5 (défaut 70)
+6 autres réglages modifiés
Pointes de tick
Les pires ticks valent plusieurs fois la moyenne. Le TPS moyen reste bon pendant que les joueurs sentent les à-coups.
- mspt_avg = 27,5 ms
- mspt_p99 = 56,78 ms
- spike_ratio = 2,06 ratio
- sample_count = 93 count
- spike_ticks = 24 count
- spike_window_ticks = 501 count
- spike_threshold_ms = 53,1 ms
- spike_ticks_with_gc = 2 count
- spike_ticks_with_throttle = 0 count
- spike_ticks_with_steal = 0 count
- spike_tick_ms = 3 722,3 ms
- spike_gc_pause_ms = 34,5 ms
- spike_throttled_ms = 0 ms
- spike_sample_interval_ms = 40 ms
- explained_share_threshold = 0,5 ratio
- explained_time_share_threshold = 0,25 ratio
›+2 autres constats
Au départ du run, des joueurs ou beaucoup d'entités étaient présents hors du monde de banc. Le serveur les fait tourner pendant les tests : une partie de chaque tick est allée à ce monde-là plutôt qu'à la charge mesurée.
- players_online = 1 count
- chunks_loaded_outside_bench = 937 count
- spawn_chunks_loaded_outside_bench = 0 count
- entities_outside_bench = 247 count
- worlds_loaded = 5 count
- players_online_threshold = 1 count
- entities_threshold = 1 200 count
Le run a commencé sur une JVM tout juste démarrée, ou qui n'avait encore lancé aucun banc depuis son démarrage : du code était encore en cours de compilation et le tas en train de grandir. Le premier run après un redémarrage peut différer des suivants.
- jvm_uptime_s = 883 s
- bench_runs_since_start = 0 count
- threshold_s = 300 s
Un constat se tait plutôt que d'attribuer une cause sans preuve. Une cause absente est une réponse, pas un oubli.
Test par test
Les problèmes d’abord — choisissez une ligne pour le test complet- Chargement de chunksExploration19,32InstableInstable
- IA des mobsEntités19,68InstableInstable
- Réseau (NBT)Réseau19,95StableInstable
- Entonnoirs (hoppers)Mécaniques19,98StableSain
- Physique des blocsStress mono-cœur20,00ModéréeSain
- Croissance par poudre d'osMécaniques20,00StableSain
- Ticking des chunksExploration20,00StableSain
- Performance disqueMémoire & Stockage20,00StableSain
- ExplosionsMécaniques20,00ModéréeSain
- Mise à jour de lumièreExploration20,00StableSain
- Performance mémoireMémoire & Stockage20,00StableSain
- CPU multi-cœurCPU20,00StableSain
- RedstoneStress mono-cœur20,00effectif 20,0StableSain
- Mono-cœur (aligné sur les ticks)CPU20,00StableSain
- Tile entities tickéesMécaniques20,00StableSain
- Sauvegarde du mondeMécaniques20,00StableSain
Les réglages que vos mesures justifient
Chaque réglage ci-dessous est déclenché par une mesure de ce rapport, et nomme le test à rejouer pour savoir s’il a servi.
Rien à changer : aucune mesure de ce rapport ne franchit un seuil où un réglage documenté aiderait.
Ligne de démarrage Java
Les options avec lesquelles ce serveur a démarré, vérifiées pour sa version de Java. Les corrections réparent ce qui est faux à coup sûr ; les pistes à tester sont des réglages à mesurer, jamais appliqués à votre place.
Ligne actuelle (64 arguments)
Les valeurs des propriétés système, des agents et des chemins de fichiers ne sont jamais affichées : elles apparaissent comme <redacted>.
-XX:ActiveProcessorCount=16 -Djdk.virtualThreadScheduler.parallelism=<redacted> -Djdk.virtualThreadScheduler.maxPoolSize=<redacted> -Xms10240M -Xmx10240M -XX:+UnlockExperimentalVMOptions -XX:+UnlockDiagnosticVMOptions -XX:+AlwaysPreTouch -XX:+PerfDisableSharedMem -XX:+UseNUMA -XX:-DontCompileHugeMethods -XX:MaxNodeLimit=240000 -XX:NodeLimitFudgeFactor=8000 -XX:ReservedCodeCacheSize=400M -XX:NonNMethodCodeHeapSize=12M -XX:ProfiledCodeHeapSize=194M -XX:NonProfiledCodeHeapSize=194M -XX:NmethodSweepActivity=1 -XX:+UseFastUnorderedTimeStamps -XX:+UseCriticalJavaThreadPriority -XX:AllocatePrefetchStyle=3 -XX:+AlwaysActAsServerClassMachine -XX:LargePageSizeInBytes=2M -XX:+EagerJVMCI -XX:+UseAES -XX:+UseAESIntrinsics -XX:+UseFMA -XX:+UseLoopPredicate -XX:+RangeCheckElimination -XX:+OptimizeStringConcat -XX:+UseCompressedOops -XX:+UseThreadPriorities -XX:+OmitStackTraceInFastThrow -XX:+RewriteBytecodes -XX:+RewriteFrequentPairs -XX:+UseFPUForSpilling -XX:+UseFastStosb -XX:+UseNewLongLShift -XX:+UseVectorCmov -XX:+UseXMMForArrayCopy -XX:+UseXmmI2D -XX:+UseXmmI2F -XX:+UseXmmLoadAndClearUpper -XX:+UseXmmRegToRegMoveAll -XX:+EliminateLocks -XX:+DoEscapeAnalysis -XX:+AlignVector -XX:+OptimizeFill -XX:+EnableVectorSupport -XX:+UseCharacterCompareIntrinsics -XX:+UseCopySignIntrinsic -XX:+UseVectorStubs -XX:UseSSE=4 -XX:+UseFastJNIAccessors -XX:+UseInlineCaches -XX:+SegmentedCodeCache --add-modules=jdk.incubator.vector -Dterminal.jline=false -Dterminal.ansi=true -XX:+UseG1GC -XX:+ExplicitGCInvokesConcurrent -XX:-ClassUnloadingWithConcurrentMark -XX:MaxGCPauseMillis=20 -Xlog:gc*:file=<redacted>:time,uptime,level,tags:filecount=3,filesize=8M
Rien à corriger : chaque option est valable pour Java 25.
À tester
Des réglages de performance à essayer un par un, puis à mesurer par un banc avant et après. Aucun n'est appliqué dans la ligne corrigée, et aucun ne vient avec un gain promis.
Des réglages documentés par PaperMC pour les serveurs Minecraft : ils dimensionnent la jeune génération de G1 pour le rythme d'allocation très élevé du jeu et déclenchent les collectes plus tôt. Tas initial et maximal à la même taille, avec AlwaysPreTouch, engagent tout le tas au démarrage : proposés seulement parce que ce tas reste déjà sous la limite mémoire.
-XX:+ParallelRefProcEnabled -XX:MaxGCPauseMillis=200 -XX:+DisableExplicitGC -XX:G1NewSizePercent=30 -XX:G1MaxNewSizePercent=40 -XX:G1HeapRegionSize=8M -XX:G1ReservePercent=20 -XX:G1HeapWastePercent=5 -XX:G1MixedGCCountTarget=4 -XX:InitiatingHeapOccupancyPercent=15 -XX:G1MixedGCLiveThresholdPercent=90 -XX:G1RSetUpdatingPauseTimePercent=5 -XX:SurvivorRatio=32 -XX:MaxTenuringThreshold=1Aucune mesure de ce run ne la désigne : elle reste une piste à mesurer.
sourceRelancer et comparer
- Appliquez la ligne corrigée là où votre serveur démarre (paramètres de démarrage du panneau, start.sh).
- Redémarrez le serveur.
- Lancez un nouveau banc :
/bench start - Comparez le nouveau rapport avec celui-ci.
Ce rapport est l'avant ; ajoutez le nouveau rapport à la comparaison quand il sera là. Un seul run de chaque côté dit peu de chose : l'écart entre deux runs d'un serveur inchangé est du bruit.
Conditions du run
Ce que le plugin a vu de l'hôte pendant le banc, et ce que le site en conclut. Le plugin rapporte des faits ; les verdicts et leurs seuils sont ceux du site, les mêmes que ceux du diagnostic et de l'API.
Le calcul de référence chronométré pendant le run a gardé son rythme, et l'hyperviseur n'a pas pris de temps CPU notable.
Un quota CPU, un jeu de CPU réduit ou une limite mémoire s'applique au serveur.
Contention pendant le run
- Ralentissement du calcul de référence
- 4,6 % (seuil 15 %)3 mesures : 14,4 ms · 14,2 ms · 14,8 ms (un premier temps lent ne compte pas à lui seul) — jugées sur la médiane d’au moins 40 échantillons par mesure (plugin 2.6.2) ; bruit de l’hôte 11,6 %, le seuil s’y élargit, de 15 à 30 % — attente du calme du serveur avant Entonnoirs (hoppers), après le chargement de tronçons : 0,0 s (limite 30,0 s, après une génération de tronçons)
- Temps CPU volé par l'hyperviseur
- 0 % (seuil 5 %)
- Périodes d'ordonnancement terminées bridées par le quota
- non mesuré (seuil 25 %)0 ms
- Temps passé par une tâche à attendre un cœur
- 0,9 % (seuil 40 %)
Limites vues par le serveur
- Quota CPU
- aucune (aucune limite à aucun niveau)
- Jeu de CPU
- 0-15 (16 cœurs)
- Limite mémoire
- 21,6 GiB
- CPU logiques de l'hôte
- 16
- Mémoire de l'hôte
- 31,3 GiB
- Signes de conteneur
- dockerenv, cgroup-v2-namespace, overlay-root, pterodactyl-env
Stockage
- Système de fichiers
- ext4 · Système de fichiers local
- Lectures 4K directes
- Honorées (115,8 µs contre 1,2 µs depuis le cache)
Mesure single-core
- Débit (temps mural)
- 465,4 M ops/s468,3 M ops/s sur le temps CPU du fil
- Temps CPU du fil / temps mural
- 0,994 (seuil 0,900)Sous 1, le fil n'a pas tourné pendant une partie de ses tranches (quota, voisins, vol de l'hyperviseur s'il est compté, pauses de la JVM). Proche de 1, il ne prouve rien.
- Dispersion d'une seconde à l'autre
- 14,3 % (seuil 40 %)p10 436,6 M · p50 498,1 M · p90 507,8 M ops/s sur 9 secondes
- Pauses du GC pendant la mesure
- 0 ms (seuil 50 ms)0 collecte, 0 ms de collecte
- Fréquence CPU courante la plus haute
- non exposée par ce systèmemaximum annoncé : 4 300 MHz
Témoins du test single-core (plugin 2.5.0). La note ne lit pas ce test, et aucun de ces chiffres ne change le verdict de stabilité du run.
Hôte, mémoire et état du serveur
- Temps passé par une tâche à attendre le stockage
- 7 % (toutes les tâches à la fois : 6,8 %)comprend le test disque, qui attend le stockage par construction : non jugé pour le run
- Temps passé par une tâche bloquée sur la mémoire
- 0 % (toutes les tâches à la fois : 0 %) (seuil 5 %)
- Quota CPU pendant le run
- non mesuréaucun changement observé
- Mémoire du conteneur
- pic 13 855 Mioévénements de limite : high 0 · max 0 · tués par l'OOM 0
- Tâches prêtes sur la machine
- jusqu'à 14,8 en moyenne pendant un test, pour 16 CPU logiques
- Uptime de l'hôte au départ
- 145,3 h
- Serveur au départ du run
- JVM démarrée depuis 14,7 minpremier banc depuis le démarrage de la JVMhors du monde de banc : 1 joueurs · 937 tronçons · 247 entités
Pressions du run depuis le plugin 2.4.0, le reste depuis le plugin 2.6.0. Aucun de ces chiffres ne change la note ni le verdict de stabilité du run ; le diagnostic nomme les tests concernés.
Les seuils et leurs raisons sont publiés dans la méthodologie du banc. Règles rc-7.
Toutes les mesures
Chaque test en entier. Les tests en difficulté sont ouverts ; les autres se replient sur leur ligne de résumé.
Stress mono-cœur
RedstoneSain20,00 TPS15,4 ms35.6s
Stress mono-cœur via mises à jour intensives de circuits redstone.
- Ramasse-miettes chargé7 collections, 59ms total
Percentiles et stabilité
Données brutes (65 champs)
Physique des blocsSain20,00 TPS12,9 ms25.7s
Stress mono-cœur via la physique des blocs qui tombent.
- Ramasse-miettes chargé7 collections, 70ms total
Percentiles et stabilité
Données brutes (68 champs)
Exploration
Chargement de chunksInstable19,32 TPS7,3 ms8.0s
Vitesse de génération et de chargement des chunks sur plusieurs zones dispersées.
- Ramasse-miettes chargé10 collections, 419ms total
- Le run n’a pas tenuTPS P1=10.00<15, TPS min=10.00 (52% of avg)
Percentiles et stabilité
Données brutes (58 champs)
Ticking des chunksSain20,00 TPS16,8 ms41.8s
Performance lors du ticking de nombreux chunks chargés avec random-tick activé.
- Ramasse-miettes chargé12 collections, 183ms total
Percentiles et stabilité
Données brutes (60 champs)
Mise à jour de lumièreSain20,00 TPS2,4 ms25.7s
Débit des recalculs de lumière lors de pose / casse de blocs.
- Ramasse-miettes chargé7 collections, 73ms total
Percentiles et stabilité
Données brutes (56 champs)
Entités
IA des mobsInstable19,68 TPS27,5 ms31.5s
Comportements IA complexes (villageois, golems de fer, mobs hostiles).
- Ramasse-miettes chargé13 collections, 167ms total
- Le run n’a pas tenuTPS P1=10.00<15, TPS min=10.00 (51% of avg)
Percentiles et stabilité
Données brutes (78 champs)
Mécaniques
Entonnoirs (hoppers)Sain19,98 TPS2,6 ms19.4s
Transferts d'objets intensifs en chaîne via hoppers.
- Ramasse-miettes chargé11 collections, 110ms total
Percentiles et stabilité
Données brutes (68 champs)
ExplosionsSain20,00 TPS6,9 ms17.5s
Explosions massives de TNT et destruction de blocs.
- Ramasse-miettes chargé6 collections, 35ms total
Percentiles et stabilité
Données brutes (112 champs)
Tile entities tickéesSain20,00 TPS3,1 ms37.0s
Nombreuses tile entities qui tickent (fours, hoppers, etc.).
- Ramasse-miettes chargé8 collections, 83ms total
Percentiles et stabilité
Données brutes (57 champs)
Sauvegarde du mondeSain20,00 TPS1,3 ms4.7s
Vitesse de sauvegarde du monde et impact TPS pendant l'opération.
- Ramasse-miettes chargé6 collections, 58ms total
Percentiles et stabilité
Données brutes (55 champs)
Croissance par poudre d'osSain20,00 TPS2,4 ms23.8s
Croissance rapide de cultures et d'arbres via poudre d'os.
- Ramasse-miettes chargé3 collections, 18ms total
Percentiles et stabilité
Données brutes (59 champs)
CPU
Mono-cœur (aligné sur les ticks)Sain20,00 TPS3,9 ms10.0s
Débit mono-thread mesuré sur le thread principal, sous contrainte du tick scheduler.
- Ramasse-miettes chargé6 collections, 51ms total
Percentiles et stabilité
Données brutes (60 champs)
CPU multi-cœurSain20,00 TPS1,6 ms9.8s
Débit de calcul parallèle réparti sur les threads de travail.
- Ramasse-miettes chargé3 collections, 16ms total
Percentiles et stabilité
Données brutes (55 champs)
Mémoire & Stockage
Performance mémoireSain20,00 TPS1,3 ms33.2s
Bande passante et latence de la RAM.
Mesures via JVM — ne reflètent pas les performances bare-metal réelles.
- Ramasse-miettes chargé12 collections, 63ms total
Percentiles et stabilité
Données brutes (55 champs)
Performance disqueSain20,00 TPS1,3 ms75.7s
Lecture / écriture séquentielle et aléatoire 4K.
Mesures via JVM — ne reflètent pas les performances bare-metal réelles.
- Ramasse-miettes chargé4 collections, 20ms total
Percentiles et stabilité
Données brutes (54 champs)
Réseau
Réseau (NBT)Instable19,95 TPS25,8 ms20.0s
Débit de sérialisation — proxy de la vitesse à laquelle le serveur peut transmettre les données monde aux clients.
- Ramasse-miettes chargé5 collections, 27ms total
- Le run n’a pas tenuTPS P1=15.00<15
Percentiles et stabilité
Données brutes (56 champs)
›Machine et serveurAMD Ryzen 9 9950X 16-Core Processor · Purpur · 1.21.11
Détail des scores
Scores détaillés par sous-catégorie