Benchmark Report

Apr 27, 2026, 7:43 PMVoxelBench plugin 1.0.214 min 32 s benchmark
PublicSTANDARDStandard scoring 8.1.0· earlier scoring
Total score
30,698
RankD
Single Core32,281
Gameplay45,157
Hardware27,298
How this score is built
The verdict

CPU quota

The JVM sees far fewer cores than the host advertises. Everything that parallelises is bounded by the container, not by the machine.

  • host_threads = 64 cores
  • usable_cores = 4 cores
  • core_ratio = 16 ratio

Weakest test: Mob AI, 5.67 TPS on average. The 15 other tests hold at least 17.47 TPS.

Multipliers appliedSynergy ×1.031Stability ×0.911Duration ×0.982

Compared with other servers

The comparison with other servers uses reports scored with version 8.3.0 of the scoring rules. This report was scored with another version, so its score is not comparable.

What matters

Read from the measurements, never estimated
Critical

CPU quota

The JVM sees far fewer cores than the host advertises. Everything that parallelises is bounded by the container, not by the machine.

Likely cause: CPU quota

  • host_threads = 64 cores
  • usable_cores = 4 cores
  • core_ratio = 16 ratio
CriticalMob AI

Tick spikes

The worst ticks are several times the mean. Average TPS stays fine while players feel the stutter.

  • mspt_avg = 276.12 ms
  • mspt_p99 = 911.28 ms
  • spike_ratio = 3.3 ratio
  • sample_count = 90 count
See the setting this justifies

Tick spikes

The worst ticks are several times the mean. Average TPS stays fine while players feel the stutter.

  • mspt_avg = 28.47 ms
  • mspt_p99 = 66.54 ms
  • spike_ratio = 2.34 ratio
  • sample_count = 167 count
›+5 more findings
For informationMemory latency not measuredmemorynot measured

No access latency was published, so the score assumed an unfavourable one. Publishing the measurement can only help.

  • assumed_latency_ns = 180 ns
  • reference_latency_ns = 120 ns
For informationRandom 4K not measureddisknot measured

Direct IO was refused by the host, so the random part of the disk score rests on an assumption rather than a measurement.

  • assumed_random_mbps = 90 MB/s
  • reference_random_mbps = 150 MB/s
For informationMain thread saturatedblockPhysicssingle core

One game thread is already over its tick budget under the benchmark's own load. Players and redstone will push it further.

  • mspt_avg = 46.09 ms
  • mspt_target = 35 ms
  • tps_avg = 19.28 tps
  • tps_held_threshold = 18 tps
For informationMain thread saturatedredstonesingle core

One game thread is already over its tick budget under the benchmark's own load. Players and redstone will push it further.

  • mspt_avg = 46.49 ms
  • mspt_target = 35 ms
  • tps_avg = 20 tps
  • tps_held_threshold = 18 tps
For informationTick spikesredstone

The worst ticks are several times the mean. Average TPS stays fine while players feel the stutter.

  • mspt_avg = 46.49 ms
  • mspt_p99 = 112.62 ms
  • spike_ratio = 2.42 ratio
  • sample_count = 30 count
  • periodic_test = 1

A finding stays silent rather than attribute a cause without evidence. An absent cause is an answer, not an omission.

Test by test

Problems first — select a row for the full test

Settings your measurements justify

Each setting below is triggered by a measurement from this report, and names the test to replay to find out whether it helped.

Spigotspigot.yml

Shrink the monster activation range

world-settings.default.entity-activation-range.monsters: 24

Measured : mobAI.mspt.avg 276.1 ms (threshold 35.0 ms)

Mob AI costs more per tick than the budget allows. The activation range decides how far from a player a monster keeps thinking; shrinking it puts distant ones to sleep without removing them.

Test to replay : mobAI

Bukkitbukkit.yml

Lower the monster spawn limit

spawn-limits.monsters: 50

Measured : mobAI.mspt.avg 276.1 ms (threshold 50.0 ms)

Mob AI is past the critical cost per tick, where shrinking the activation range is no longer enough. The spawn limit caps how many monsters exist per player at all, which is the only setting here that reduces the work rather than deferring it.

Test to replay : mobAI

These settings trade a little gameplay fidelity for tick budget. Apply one at a time and replay the named test: the effect stays a hypothesis until you have measured it.

Briefing for a language model

Paste this into the assistant of your choice to have it rewritten in prose. It already carries every number, so the model has none left to invent.

{
  "format": "voxelbench.tuning.v1",
  "instruction": "Rewrite each recommendation below as plain prose for a server operator. Every number you are allowed to use is already in this document: the measured value, its threshold, and the proposed setting. Do not compute, estimate or predict any other number, and never state an expected gain. Keep every setting name and value exactly as written.",
  "server": {
    "type": "spigot",
    "minecraft": "1.1.2",
    "java": "25.0.2"
  },
  "recommendations": [
    {
      "id": "spigot.portee-activation-monstres",
      "family": "spigot",
      "measure": "mobAI.mspt.avg",
      "value": 276.11958957777784,
      "unit": "ms",
      "threshold": 35,
      "control_test": "mobAI",
      "file": "spigot.yml",
      "setting": "world-settings.default.entity-activation-range.monsters",
      "proposed_value": "24",
      "current_value": null
    },
    {
      "id": "bukkit.limite-monstres",
      "family": "bukkit",
      "measure": "mobAI.mspt.avg",
      "value": 276.11958957777784,
      "unit": "ms",
      "threshold": 50,
      "control_test": "mobAI",
      "file": "bukkit.yml",
      "setting": "spawn-limits.monsters",
      "proposed_value": "50",
      "current_value": null
    }
  ]
}

Java start-up line

The options this server was started with, checked against its Java version. Corrections fix what is certainly wrong; leads to test are settings to measure, never applied for you.

Nothing to correctJava 25JVM not identifiedCollector: chosen by the JVM
Current line (5 arguments)

Values of system properties, agents and file paths are never shown: they appear as <redacted>.

-Xms128M -Xmx6302M -Dterminal.jline=false -Dterminal.ansi=true -Djline.terminal=<redacted>

Nothing to correct: every option is valid for Java 25.

To test

Performance settings to try one at a time, then measure with a benchmark before and after. None of them is applied in the corrected line, and none comes with a promised gain.

to testAikar's G1 settings

Settings documented by PaperMC for Minecraft servers: they size G1's young generation for the game's very high allocation rate and start collections earlier.

-XX:+UseG1GC -XX:+ParallelRefProcEnabled -XX:MaxGCPauseMillis=200 -XX:+UnlockExperimentalVMOptions -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:+PerfDisableSharedMem -XX:MaxTenuringThreshold=1

No measurement of this run points to it: it stays a lead to measure.

source

Re-run and compare

  1. Apply the corrected line where your server starts (panel start-up parameters, start.sh).
  2. Restart the server.
  3. Run a new benchmark: /bench start
  4. Compare the new report with this one.
Open the comparison with this report

This report is the before; add the new report to the comparison once it is in. A single run on each side says little: the gap between two runs of an unchanged server is noise.

Every measurement

Each test in full. Tests in trouble are open; the others fold to their summary line.

Single-Core Stress

RedstoneHealthy

Single-core stress via intensive redstone circuit updates.

TPS
min
20.00
avg
20.00
max
20.00
MSPT
min
28.51
avg
46.49
max
112.62
Piston Count1600
Gc Count99
Gc Time Ms734 ms
Percentiles and stability
TPS P1 (worst)20.00
TPS P520.00
TPS P50 (median)20.00
MSPT P9598.12
MSPT P99 (worst)112.62
TPS σ0.002
MSPT σ27.992
TPS derived from MSPT10.19
TPS stability0.0%(Stable)
MSPT stability112.0%(Unstable)
Block PhysicsHealthy

Single-core stress via falling-block physics.

TPS
min
15.00
avg
19.28
max
20.00
MSPT
min
20.25
avg
46.09
max
72.17
Spawn Frequency1
Gc Count26
Falling Block Count24000
Gc Time Ms566 ms
Percentiles and stability
TPS P1 (worst)15.00
TPS P515.00
TPS P50 (median)20.00
MSPT P9563.42
MSPT P99 (worst)72.17
TPS σ1.763
MSPT σ11.970
TPS derived from MSPT15.77
TPS stability8.8%(Stable)
MSPT stability47.9%(Unstable)

Exploration

Chunk LoadingUnstable

Chunk generation and loading speed across dispersed zones.

TPS
min
15.00
avg
19.35
max
20.00
MSPT
min
2.84
avg
28.47
max
69.24
Gc Count116
Chunks Per Zone5000
Chunks Loaded37816
Avg Load Time Ms1 ms
Chunks Per Second942 ops/s
Dispersed Zones8
Gc Time Ms9134 ms
Percentiles and stability
TPS P1 (worst)15.00
TPS P515.00
TPS P50 (median)20.00
MSPT P9551.31
MSPT P99 (worst)66.54
TPS σ1.673
MSPT σ12.531
TPS derived from MSPT19.49
TPS stability8.4%(Stable)
MSPT stability50.1%(Unstable)
Chunk TickingHealthy

Server performance when ticking many loaded chunks with random tick updates.

TPS
min
15.00
avg
19.85
max
20.00
MSPT
min
22.12
avg
31.47
max
66.06
Gc Count46
Chunk Count200
Tick Speed20
Gc Time Ms989 ms
Percentiles and stability
TPS P1 (worst)15.00
TPS P520.00
TPS P50 (median)20.00
MSPT P9550.58
MSPT P99 (worst)57.40
TPS σ0.845
MSPT σ9.332
TPS derived from MSPT19.77
TPS stability4.2%(Stable)
MSPT stability37.3%(Unstable)
Lighting UpdateHealthy

Lighting recomputation throughput on block place / break.

TPS
min
15.00
avg
19.95
max
20.00
MSPT
min
3.51
avg
5.11
max
7.89
Gc Count6
Total Updates3220
Dispersed Zones8
Gc Time Ms291 ms
Percentiles and stability
TPS P1 (worst)19.82
TPS P520.00
TPS P50 (median)20.00
MSPT P957.35
MSPT P99 (worst)7.64
TPS σ0.481
MSPT σ1.020
TPS derived from MSPT20.00
TPS stability2.4%(Stable)
MSPT stability4.1%(Stable)

Entities

Mob AICritical

Complex mob AI behaviours (villagers, iron golems, hostile mobs).

Phase 1
TPS 5.22
MSPT 323.43 ms
Phase 2
TPS 5.02
MSPT 257.46 ms
TPS
min
4.05
avg
5.67
max
20.00
MSPT
min
1.25
avg
276.12
max
911.28
Global Avg Tps5
Phase2 Avg Tps5
Gc Count16
Global Avg Mspt290
Villager Count2400
Phase1 Avg Tps5
Filter Rate1
Hostile Mob Count1200
Phase1 Avg Mspt323
House Count120
Phase2 Avg Mspt257
Gc Time Ms587 ms
Percentiles and stability
TPS P1 (worst)4.05
TPS P55.00
TPS P50 (median)5.00
MSPT P95505.76
MSPT P99 (worst)911.28
TPS σ3.114
MSPT σ128.435
TPS derived from MSPT1.98
TPS stability15.6%(Moderate)
MSPT stability513.7%(Unstable)

Mechanics

HopperHealthy

Intensive hopper chain item transfers.

TPS
min
10.00
avg
17.47
max
20.00
MSPT
min
3.38
avg
5.31
max
11.00
Items Transferred38000
Hopper Count Per Line50
Hopper Count Total4000
Gc Count50
Parallel Lines10
Items Total40000
Total Lines80
Transfer Efficiency95
Items Per Second1032 ops/s
Dispersed Zones8
Gc Time Ms3677 ms
Percentiles and stability
TPS P1 (worst)10.00
TPS P510.50
TPS P50 (median)20.00
MSPT P9510.20
MSPT P99 (worst)11.00
TPS σ3.919
MSPT σ2.477
TPS derived from MSPT20.00
TPS stability19.6%(Moderate)
MSPT stability9.9%(Stable)
ExplosionHealthy

Massive TNT explosions and block destruction.

TPS
min
15.00
avg
19.93
max
20.00
MSPT
min
4.31
avg
11.21
max
34.24
Explosion Impact5
Gc Count10
Blocks Per Second430 ops/s
Tnt Total1200
Blocks Destroyed7316
Tnt Count150
Dispersed Zones8
Gc Time Ms392 ms
Percentiles and stability
TPS P1 (worst)15.00
TPS P520.00
TPS P50 (median)20.00
MSPT P9522.18
MSPT P99 (worst)34.24
TPS σ0.602
MSPT σ6.783
TPS derived from MSPT20.00
TPS stability3.0%(Stable)
MSPT stability27.1%(Unstable)
Ticking Tile EntitiesHealthy

Many ticking tile entities (furnaces, hoppers, etc.).

TPS
min
19.99
avg
20.00
max
20.00
MSPT
min
3.93
avg
4.41
max
5.49
Total Tile Entities5000
Gc Count6
Dispersed Zones8
Gc Time Ms370 ms
Percentiles and stability
TPS P1 (worst)20.00
TPS P520.00
TPS P50 (median)20.00
MSPT P955.02
MSPT P99 (worst)5.43
TPS σ0.002
MSPT σ0.302
TPS derived from MSPT20.00
TPS stability0.0%(Stable)
MSPT stability1.2%(Stable)
World SaveHealthy

World save speed and TPS impact during save operations.

TPS
min
15.00
avg
19.72
max
20.00
MSPT
min
2.76
avg
3.07
max
3.36
Disk Write Speed MBps541 MB/s
Tps Impact5
Gc Count3
World Size MB2542 MB
Gc Time Ms297 ms
Percentiles and stability
TPS P1 (worst)15.00
TPS P515.00
TPS P50 (median)20.00
MSPT P953.36
MSPT P99 (worst)3.36
TPS σ1.179
MSPT σ0.186
TPS derived from MSPT20.00
TPS stability5.9%(Stable)
MSPT stability0.7%(Stable)
Bone Meal GrowthHealthy

Rapid crop and tree growth via bone meal.

TPS
min
19.99
avg
20.00
max
20.00
MSPT
min
3.17
avg
4.28
max
5.82
Crops Fully Grown422
Gc Count1
Growth Rate24
Crop Count500
Bone Meal Used1473
Trees Grown43
Sapling Count200
Gc Time Ms271 ms
Percentiles and stability
TPS P1 (worst)19.99
TPS P520.00
TPS P50 (median)20.00
MSPT P955.21
MSPT P99 (worst)5.82
TPS σ0.002
MSPT σ0.565
TPS derived from MSPT20.00
TPS stability0.0%(Stable)
MSPT stability2.3%(Stable)

CPU

Single-Core (tick-aligned)Healthy

Single-thread compute throughput measured on the main thread under the tick scheduler.

TPS
min
20.00
avg
20.00
max
20.00
MSPT
min
4.95
avg
5.56
max
6.53
Total Operations105000000
Gc Count2
Operations Per Second10458031 ops/s
Cpu Cores4
Batch Size500000
Gc Time Ms241 ms
Percentiles and stability
TPS P1 (worst)20.00
TPS P520.00
TPS P50 (median)20.00
MSPT P956.07
MSPT P99 (worst)6.53
TPS σ0.001
MSPT σ0.319
TPS derived from MSPT20.00
TPS stability0.0%(Stable)
MSPT stability1.3%(Stable)
Multi-Core CPUHealthy

Parallel computation throughput across worker threads.

TPS
min
20.00
avg
20.00
max
20.00
MSPT
min
2.65
avg
3.62
max
4.65
Total Operations50000000000
Work Size Per Task500000000
Tasks Completed100
Gc Count1
Task Count100
Operations Per Second2683575596 ops/s
Cpu Cores4
Gc Time Ms116 ms
Percentiles and stability
TPS P1 (worst)20.00
TPS P520.00
TPS P50 (median)20.00
MSPT P954.39
MSPT P99 (worst)4.65
TPS σ0.002
MSPT σ0.454
TPS derived from MSPT20.00
TPS stability0.0%(Stable)
MSPT stability1.8%(Stable)

Memory & Storage

Memory PerformanceHealthy

RAM bandwidth and latency.

JVM measurements — do not reflect actual bare-metal performance.

TPS
min
19.92
avg
20.00
max
20.00
MSPT
min
2.26
avg
3.29
max
5.32
Seq Read MBps68 MB/s
Gc Count16
Mem Copy MBps11686 MB/s
Rand Write MBps10 MB/s
Rand Op K250000
Passes3
Memory Latency Ns155 ns
Seq Write MBps29 MB/s
Table Size MB512 MB
Gc Time Ms396 ms
Rand Read MBps7 MB/s
Percentiles and stability
TPS P1 (worst)19.99
TPS P520.00
TPS P50 (median)20.00
MSPT P954.14
MSPT P99 (worst)4.62
TPS σ0.005
MSPT σ0.461
TPS derived from MSPT20.00
TPS stability0.0%(Stable)
MSPT stability1.8%(Stable)
Disk PerformanceHealthy

Sequential and random 4K read/write performance.

JVM measurements — do not reflect actual bare-metal performance.

TPS
min
19.41
avg
20.00
max
20.00
MSPT
min
2.73
avg
3.64
max
5.10
Rand Write4 K IOPS129383 IOPS
Passes3
Seq Write MBps294 MB/s
Rand Read4 K Lat Avg Us3 µs
Rand Read4 K Lat P99 Us5 µs
Seq Read MBps2411 MB/s
Rand Write4 K MBps505 MB/s
Rand Read4 K Lat P95 Us4 µs
Cache Invalidated1
Gc Count47
Rand Read4 K MBps2388 MB/s
Rand Write4 K Lat Avg Us21 µs
Rand Read4 K Lat P50 Us3 µs
Rand Write4 K Lat P99 Us11 µs
Rand Write4 K Lat P50 Us5 µs
Rand Write4 K Lat P95 Us9 µs
Gc Time Ms336 ms
Rand Read4 K IOPS611371 IOPS
Percentiles and stability
TPS P1 (worst)19.99
TPS P520.00
TPS P50 (median)20.00
MSPT P954.53
MSPT P99 (worst)4.97
TPS σ0.071
MSPT σ0.471
TPS derived from MSPT20.00
TPS stability0.4%(Stable)
MSPT stability1.9%(Stable)

Network

Network (NBT)Healthy

Serialisation throughput — proxy for the rate at which the server can ship world data to clients.

TPS
min
19.99
avg
20.00
max
20.00
MSPT
min
22.96
avg
29.51
max
48.00
Objects Processed20000
Gc Count51
Throughput MBps6 MB/s
Objects Per Second1000 ops/s
Gc Time Ms184 ms
Bytes Processed120394856
Percentiles and stability
TPS P1 (worst)19.99
TPS P520.00
TPS P50 (median)20.00
MSPT P9534.60
MSPT P99 (worst)48.00
TPS σ0.003
MSPT σ3.506
TPS derived from MSPT20.00
TPS stability0.0%(Stable)
MSPT stability14.0%(Moderate)
›Machine and serverAMD EPYC 7543P 32-Core Processor · Spigot · 1.1.2
CPU Information
ModelAMD EPYC 7543P 32-Core Processor
VendorAuthenticAMD
Physical Cores32
Logical Cores64
Max Frequency3.50067 GHz
Server Information
Server TypeSpigot (4620-Spigot-566f972-3347052 (MC: 26.1.2))
Minecraft Version1.1.2
Bukkit Version26.1.2-R0.1-SNAPSHOT
Java Version25.0.2
OSLinux
Plugins1
JVM Memory
Max Heap6.16 GB
Allocated0.90 GB
Used0.58 GB
Free0.32 GB
Heap Usage9.4%
JVM Flags
-Xms128M -Xmx6302M -Dterminal.jline=false -Dterminal.ansi=true -Djline.terminal=<redacted>
Dispersed Zones8

Score Breakdown

Detailed sub-category scores

Hardware

Memory16,036
Disk19,410
Multi-Core57,751

Gameplay

Exploration52,100
Entities56,691
Mechanics35,375

Multipliers

Synergy Bonusx1.031
Stability Bonusx0.911
Duration Mult.x0.982