Benchmark Report

May 14, 2026, 10:08 PMVoxelBench plugin 1.0.215 min 8 s benchmark
PublicSTANDARDStandard scoring 8.1.0· earlier scoring
Total score
55,242
RankC
Single Core74,306
Gameplay57,456
Hardware47,884
How this score is built
The verdict

Tick spikes · Lighting Update

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

  • mspt_avg = 5.98 ms
  • mspt_p99 = 125 ms
  • spike_ratio = 20.91 ratio
  • sample_count = 93 count

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

Multipliers appliedSynergy ×1.150Stability ×0.926Duration ×0.973

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

Tick spikes

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

  • mspt_avg = 5.98 ms
  • mspt_p99 = 125 ms
  • spike_ratio = 20.91 ratio
  • sample_count = 93 count
CriticalMob AI

Tick spikes

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

  • mspt_avg = 138.18 ms
  • mspt_p99 = 390.63 ms
  • spike_ratio = 2.83 ratio
  • sample_count = 122 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 = 21.46 ms
  • mspt_p99 = 67.71 ms
  • spike_ratio = 3.16 ratio
  • sample_count = 98 count
›+2 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

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 138.2 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 138.2 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": "purpur",
    "minecraft": "1.21.11",
    "java": "25.0.1"
  },
  "recommendations": [
    {
      "id": "spigot.portee-activation-monstres",
      "family": "spigot",
      "measure": "mobAI.mspt.avg",
      "value": 138.1809255464481,
      "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": 138.1809255464481,
      "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: G1
Current line (23 arguments)

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

-Xms4608M -Xmx4608M --add-modules=jdk.incubator.vector -XX:+UseG1GC -XX:+ParallelRefProcEnabled -XX:MaxGCPauseMillis=200 -XX:+UnlockExperimentalVMOptions -XX:+DisableExplicitGC -XX:+AlwaysPreTouch -XX:G1HeapWastePercent=5 -XX:G1MixedGCCountTarget=4 -XX:InitiatingHeapOccupancyPercent=15 -XX:G1MixedGCLiveThresholdPercent=90 -XX:G1RSetUpdatingPauseTimePercent=5 -XX:SurvivorRatio=32 -XX:+PerfDisableSharedMem -XX:MaxTenuringThreshold=1 -Dusing.aikars.flags=https://mcflags.emc.gs -Daikars.new.flags=true -XX:G1NewSizePercent=30 -XX:G1MaxNewSizePercent=40 -XX:G1HeapRegionSize=8M -XX:G1ReservePercent=20

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

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
9.94
avg
14.95
max
20.00
MSPT
min
0.00
avg
22.68
max
41.67
Filter Rate1
Piston Count1600
Gc Count30
Gc Time Ms117 ms
Percentiles and stability
TPS P1 (worst)9.94
TPS P59.94
TPS P50 (median)10.09
MSPT P9541.67
MSPT P99 (worst)41.67
TPS σ10.048
MSPT σ14.889
TPS derived from MSPT20.00
TPS stability50.2%(Unstable)
MSPT stability59.6%(Unstable)
Block PhysicsHealthy

Single-core stress via falling-block physics.

TPS
min
15.08
avg
19.90
max
20.00
MSPT
min
3.91
avg
15.49
max
26.04
Spawn Frequency1
Gc Count9
Falling Block Count24000
Gc Time Ms86 ms
Percentiles and stability
TPS P1 (worst)15.08
TPS P519.88
TPS P50 (median)19.99
MSPT P9523.44
MSPT P99 (worst)26.04
TPS σ0.595
MSPT σ4.362
TPS derived from MSPT20.00
TPS stability3.0%(Stable)
MSPT stability17.4%(Moderate)

Exploration

Chunk LoadingHealthy

Chunk generation and loading speed across dispersed zones.

TPS
min
15.07
avg
19.93
max
20.00
MSPT
min
0.00
avg
8.52
max
57.29
Gc Count427
Chunks Per Zone5000
Chunks Loaded27640
Avg Load Time Ms3 ms
Chunks Per Second303 ops/s
Dispersed Zones8
Gc Time Ms7391 ms
Percentiles and stability
TPS P1 (worst)19.80
TPS P519.85
TPS P50 (median)20.00
MSPT P9519.53
MSPT P99 (worst)42.97
TPS σ0.415
MSPT σ7.443
TPS derived from MSPT20.00
TPS stability2.1%(Stable)
MSPT stability29.8%(Unstable)
Chunk TickingHealthy

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

TPS
min
19.86
avg
19.97
max
20.00
MSPT
min
11.72
avg
20.10
max
27.34
Gc Count20
Chunk Count200
Tick Speed20
Gc Time Ms186 ms
Percentiles and stability
TPS P1 (worst)19.87
TPS P519.87
TPS P50 (median)20.00
MSPT P9527.34
MSPT P99 (worst)27.34
TPS σ0.082
MSPT σ3.517
TPS derived from MSPT20.00
TPS stability0.4%(Stable)
MSPT stability14.1%(Moderate)
Lighting UpdateCritical

Lighting recomputation throughput on block place / break.

TPS
min
16.41
avg
19.91
max
20.00
MSPT
min
0.00
avg
5.98
max
125.00
Gc Count20
Total Updates3209
Dispersed Zones8
Gc Time Ms174 ms
Percentiles and stability
TPS P1 (worst)16.41
TPS P519.86
TPS P50 (median)20.00
MSPT P957.81
MSPT P99 (worst)125.00
TPS σ0.414
MSPT σ12.807
TPS derived from MSPT20.00
TPS stability2.1%(Stable)
MSPT stability51.2%(Unstable)

Entities

Mob AICritical

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

Phase 1
TPS 8.94
MSPT 144.94 ms
Phase 2
TPS 8.26
MSPT 124.70 ms
TPS
min
4.74
avg
8.69
max
20.00
MSPT
min
0.00
avg
138.18
max
609.38
Global Avg Tps9
Phase2 Avg Tps8
Gc Count23
Global Avg Mspt135
Villager Count2400
Phase1 Avg Tps9
Filter Rate1
Hostile Mob Count1200
Phase1 Avg Mspt145
House Count120
Phase2 Avg Mspt125
Gc Time Ms348 ms
Percentiles and stability
TPS P1 (worst)4.79
TPS P54.97
TPS P50 (median)9.95
MSPT P95281.25
MSPT P99 (worst)390.63
TPS σ3.790
MSPT σ80.412
TPS derived from MSPT3.56
TPS stability19.0%(Moderate)
MSPT stability321.6%(Unstable)

Mechanics

HopperHealthy

Intensive hopper chain item transfers.

TPS
min
18.50
avg
19.92
max
20.00
MSPT
min
0.00
avg
1.29
max
2.73
Items Transferred38080
Hopper Count Per Line50
Hopper Count Total4000
Gc Count8
Parallel Lines10
Items Total40000
Total Lines80
Transfer Efficiency95
Items Per Second2007 ops/s
Dispersed Zones8
Gc Time Ms128 ms
Percentiles and stability
TPS P1 (worst)18.50
TPS P519.60
TPS P50 (median)20.00
MSPT P952.34
MSPT P99 (worst)2.73
TPS σ0.294
MSPT σ0.580
TPS derived from MSPT20.00
TPS stability1.5%(Stable)
MSPT stability2.3%(Stable)
ExplosionHealthy

Massive TNT explosions and block destruction.

TPS
min
19.84
avg
19.97
max
20.00
MSPT
min
0.00
avg
5.04
max
11.72
Explosion Impact0
Gc Count6
Blocks Per Second420 ops/s
Tnt Total1200
Blocks Destroyed7139
Tnt Count150
Dispersed Zones8
Gc Time Ms86 ms
Percentiles and stability
TPS P1 (worst)19.84
TPS P519.86
TPS P50 (median)20.00
MSPT P957.81
MSPT P99 (worst)11.72
TPS σ0.090
MSPT σ2.591
TPS derived from MSPT20.00
TPS stability0.5%(Stable)
MSPT stability10.4%(Moderate)
Ticking Tile EntitiesHealthy

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

TPS
min
19.85
avg
19.97
max
20.00
MSPT
min
0.00
avg
2.44
max
7.81
Total Tile Entities5000
Gc Count6
Dispersed Zones8
Gc Time Ms74 ms
Percentiles and stability
TPS P1 (worst)19.85
TPS P519.87
TPS P50 (median)19.99
MSPT P953.91
MSPT P99 (worst)7.81
TPS σ0.083
MSPT σ2.161
TPS derived from MSPT20.00
TPS stability0.4%(Stable)
MSPT stability8.6%(Stable)
World SaveHealthy

World save speed and TPS impact during save operations.

TPS
min
19.85
avg
19.96
max
20.00
MSPT
min
0.00
avg
2.93
max
7.81
Disk Write Speed MBps40 MB/s
Tps Impact0
World Size MB197 MB
Percentiles and stability
TPS P1 (worst)19.85
TPS P519.85
TPS P50 (median)19.99
MSPT P953.91
MSPT P99 (worst)7.81
TPS σ0.105
MSPT σ2.149
TPS derived from MSPT20.00
TPS stability0.5%(Stable)
MSPT stability8.6%(Stable)
Bone Meal GrowthHealthy

Rapid crop and tree growth via bone meal.

TPS
min
19.87
avg
19.97
max
20.00
MSPT
min
0.00
avg
2.07
max
7.81
Crops Fully Grown481
Growth Rate23
Crop Count500
Bone Meal Used1536
Trees Grown41
Sapling Count200
Percentiles and stability
TPS P1 (worst)19.88
TPS P519.90
TPS P50 (median)20.00
MSPT P953.91
MSPT P99 (worst)3.91
TPS σ0.071
MSPT σ2.034
TPS derived from MSPT20.00
TPS stability0.4%(Stable)
MSPT stability8.1%(Stable)

CPU

Single-Core (tick-aligned)Healthy

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

TPS
min
19.88
avg
19.97
max
20.00
MSPT
min
0.00
avg
2.95
max
7.81
Total Operations102000000
Operations Per Second10199366 ops/s
Cpu Cores32
Batch Size500000
Percentiles and stability
TPS P1 (worst)19.88
TPS P519.89
TPS P50 (median)20.00
MSPT P953.91
MSPT P99 (worst)7.81
TPS σ0.079
MSPT σ1.891
TPS derived from MSPT20.00
TPS stability0.4%(Stable)
MSPT stability7.6%(Stable)
Multi-Core CPUHealthy

Parallel computation throughput across worker threads.

TPS
min
15.39
avg
19.49
max
20.00
MSPT
min
0.00
avg
1.18
max
5.21
Total Operations50000000000
Work Size Per Task500000000
Tasks Completed100
Task Count100
Operations Per Second15078812884 ops/s
Cpu Cores32
Percentiles and stability
TPS P1 (worst)15.39
TPS P515.39
TPS P50 (median)20.00
MSPT P955.21
MSPT P99 (worst)5.21
TPS σ1.432
MSPT σ2.055
TPS derived from MSPT20.00
TPS stability7.2%(Stable)
MSPT stability8.2%(Stable)

Memory & Storage

Memory PerformanceHealthy

RAM bandwidth and latency.

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

TPS
min
15.00
avg
19.87
max
20.00
MSPT
min
0.00
avg
0.32
max
5.21
Seq Read MBps159 MB/s
Gc Count5
Mem Copy MBps10107 MB/s
Rand Write MBps29 MB/s
Rand Op K250000
Passes3
Memory Latency Ns105 ns
Seq Write MBps54 MB/s
Table Size MB512 MB
Gc Time Ms12 ms
Rand Read MBps13 MB/s
Percentiles and stability
TPS P1 (worst)15.08
TPS P519.89
TPS P50 (median)20.00
MSPT P953.91
MSPT P99 (worst)3.91
TPS σ0.722
MSPT σ1.080
TPS derived from MSPT20.00
TPS stability3.6%(Stable)
MSPT stability4.3%(Stable)
Disk PerformanceHealthy

Sequential and random 4K read/write performance.

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

TPS
min
19.09
avg
19.98
max
20.00
MSPT
min
0.00
avg
0.18
max
3.91
Rand Write4 K IOPS19680 IOPS
Passes3
Seq Write MBps427 MB/s
Rand Read4 K Lat Avg Us159 µs
Rand Read4 K Lat P99 Us3908 µs
Seq Read MBps1981 MB/s
Rand Write4 K MBps77 MB/s
Rand Read4 K Lat P95 Us140 µs
Cache Invalidated1
Gc Count12
Rand Read4 K MBps99 MB/s
Rand Write4 K Lat Avg Us216 µs
Rand Read4 K Lat P50 Us29 µs
Rand Write4 K Lat P99 Us633 µs
Rand Write4 K Lat P50 Us201 µs
Rand Write4 K Lat P95 Us464 µs
Gc Time Ms114 ms
Rand Read4 K IOPS25357 IOPS
Percentiles and stability
TPS P1 (worst)19.89
TPS P519.90
TPS P50 (median)20.00
MSPT P950.00
MSPT P99 (worst)3.91
TPS σ0.082
MSPT σ0.821
TPS derived from MSPT20.00
TPS stability0.4%(Stable)
MSPT stability3.3%(Stable)

Network

Network (NBT)Unstable

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

TPS
min
15.07
avg
19.93
max
20.00
MSPT
min
15.63
avg
21.46
max
67.71
Objects Processed20000
Gc Count8
Throughput MBps5 MB/s
Objects Per Second1000 ops/s
Gc Time Ms20 ms
Bytes Processed107805242
Percentiles and stability
TPS P1 (worst)15.07
TPS P519.88
TPS P50 (median)20.00
MSPT P9523.44
MSPT P99 (worst)67.71
TPS σ0.504
MSPT σ5.613
TPS derived from MSPT20.00
TPS stability2.5%(Stable)
MSPT stability22.5%(Unstable)
›Machine and serverGenuine Intel(R) 0000 · Purpur · 1.21.11
CPU Information
ModelGenuine Intel(R) 0000
VendorGenuineIntel
Physical Cores24
Logical Cores32
Max Frequency1.69 GHz
Server Information
Server TypePurpur (1.21.11-2568-f57bd86 (MC: 1.21.11))
Minecraft Version1.21.11
Bukkit Version1.21.11-R0.1-SNAPSHOT
Java Version25.0.1
OSWindows 10
Plugins1
JVM Memory
Max Heap4.50 GB
Allocated4.50 GB
Used2.33 GB
Free2.17 GB
Heap Usage51.8%
JVM Flags
-Xms4608M -Xmx4608M --add-modules=jdk.incubator.vector -XX:+UseG1GC -XX:+ParallelRefProcEnabled -XX:MaxGCPauseMillis=200 -XX:+UnlockExperimentalVMOptions -XX:+DisableExplicitGC -XX:+AlwaysPreTouch -XX:G1HeapWastePercent=5 -XX:G1MixedGCCountTarget=4 -XX:InitiatingHeapOccupancyPercent=15 -XX:G1MixedGCLiveThresholdPercent=90 -XX:G1RSetUpdatingPauseTimePercent=5 -XX:SurvivorRatio=32 -XX:+PerfDisableSharedMem -XX:MaxTenuringThreshold=1 -Dusing.aikars.flags=https://mcflags.emc.gs -Daikars.new.flags=true -XX:G1NewSizePercent=30 -XX:G1MaxNewSizePercent=40 -XX:G1HeapRegionSize=8M -XX:G1ReservePercent=20
Dispersed Zones8

Score Breakdown

Detailed sub-category scores

Hardware

Memory16,930
Disk18,950
Multi-Core138,750

Gameplay

Exploration72,528
Entities73,150
Mechanics39,342

Multipliers

Synergy Bonusx1.150
Stability Bonusx0.926
Duration Mult.x0.973