Benchmark Report

Jul 11, 2026, 6:49 PMVoxelBench plugin 1.6.018 min 57 s benchmark
PublicSTANDARDStandard scoring 8.1.0· earlier scoring
Total score
28,140
RankF
Single Core38,807
Gameplay52,657
Hardware14,729
How this score is built
The verdict

Tick spikes · Mob AI

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

  • mspt_avg = 369.8 ms
  • mspt_p99 = 1,241.79 ms
  • spike_ratio = 3.36 ratio
  • sample_count = 69 count

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

Multipliers appliedSynergy ×0.959Stability ×0.911Duration ×0.916

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
CriticalMob AI

Tick spikes

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

  • mspt_avg = 369.8 ms
  • mspt_p99 = 1,241.79 ms
  • spike_ratio = 3.36 ratio
  • sample_count = 69 count
See the setting this justifies
Good to know

Non-default server configuration

Compare with care against a server running default settings.

  • simulation-distance 6 (default 10)
  • spawn-limit.water-ambient 15 (default 20)
›+4 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 = 36 ms
  • mspt_target = 35 ms
  • tps_avg = 19.83 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 = 72 ms
  • mspt_target = 35 ms
  • tps_avg = 20 tps
  • tps_held_threshold = 18 tps

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 369.8 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

Currently : 70

Measured : mobAI.mspt.avg 369.8 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": "paper",
    "minecraft": "26.1.2",
    "java": "25.0.3"
  },
  "recommendations": [
    {
      "id": "spigot.portee-activation-monstres",
      "family": "spigot",
      "measure": "mobAI.mspt.avg",
      "value": 369.8,
      "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": 369.8,
      "unit": "ms",
      "threshold": 50,
      "control_test": "mobAI",
      "file": "bukkit.yml",
      "setting": "spawn-limits.monsters",
      "proposed_value": "50",
      "current_value": "70"
    }
  ]
}

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.

DangerJava 25JVM not identifiedCollector: G1Memory: 14336 MiB, safe heap up to 12185 MiB
Current line (22 arguments)

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

-Xms12G -Xmx12G -XX:+UseG1GC -XX:+ParallelRefProcEnabled -XX:MaxGCPauseMillis=200 -XX:+UnlockExperimentalVMOptions -XX:+DisableExplicitGC -XX:+AlwaysPreTouch -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 -XX:ParallelGCThreads=4 -XX:ConcGCThreads=2

To correct

  • DangerHeap too close to the machine's memory-Xmx12G

    The heap may use 12288 MiB of the machine's 14336 MiB, which leaves 2048 MiB for everything else (code, threads, network buffers, the system). Under load the server can be killed without any Java error. The corrected line keeps 2151 MiB outside the heap.

Corrected line to copy

  • Changed-Xmx12G-Xmx12185Mleaves 2151 MiB outside the heap.
  • Changed-Xms12G-Xms12185Mthe initial heap cannot exceed the maximum.
java -Xms12185M -Xmx12185M -XX:+UseG1GC -XX:+ParallelRefProcEnabled -XX:MaxGCPauseMillis=200 -XX:+UnlockExperimentalVMOptions -XX:+DisableExplicitGC -XX:+AlwaysPreTouch -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 -XX:ParallelGCThreads=4 -XX:ConcGCThreads=2 -jar server.jar nogui

Replace server.jar with your server's jar. Paste the line where your server is started: the start-up parameters (or JVM arguments) of your hosting panel, or your start.sh / start.bat. Only the corrections above differ from your current line.

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.

  • Heavy garbage collection7 collections, 195ms total
TPS
min
20.00
avg
20.00
max
20.00
MSPT
min
40.50
avg
72.00
max
129.10
Percentiles and stability
TPS P1 (worst)20.00
TPS P520.00
TPS P50 (median)20.00
MSPT P95124.66
MSPT P99 (worst)129.11
TPS σ0.002
MSPT σ37.980
TPS derived from MSPT8.02
TPS stability0.0%(Stable)
MSPT stability151.9%(Unstable)
Raw data (3 fields)
pistonCount: 1,600gcCount: 7gcTimeMs: 195
Block PhysicsHealthy

Single-core stress via falling-block physics.

TPS
min
15.00
avg
19.83
max
20.00
MSPT
min
15.60
avg
36.00
max
54.60
Percentiles and stability
TPS P1 (worst)15.00
TPS P520.00
TPS P50 (median)20.00
MSPT P9550.64
MSPT P99 (worst)54.58
TPS σ0.920
MSPT σ8.799
TPS derived from MSPT19.75
TPS stability4.6%(Stable)
MSPT stability35.2%(Unstable)
Raw data (3 fields)
spawnFrequency: 1blocksSpawnedPerSecond: 1,188.119fallingBlockCount: 24,000

Exploration

Chunk LoadingHealthy

Chunk generation and loading speed across dispersed zones.

  • Heavy garbage collection4 collections, 629ms total
TPS
min
15.00
avg
19.77
max
20.00
MSPT
min
2.90
avg
7.00
max
38.40
Avg window111.8 chunks
Chunks loaded16000 chunks
Avg chunk load time0.67 ms
Chunks/sec1179.42 chunks/s
Peak window200 chunks
Critical brakes0 events
Peak observed MSPT80.3 ms
Percentiles and stability
TPS P1 (worst)15.00
TPS P519.99
TPS P50 (median)20.00
MSPT P9518.68
MSPT P99 (worst)38.36
TPS σ1.041
MSPT σ5.729
TPS derived from MSPT20.00
TPS stability5.2%(Stable)
MSPT stability22.9%(Unstable)
Raw data (2 fields)
gcCount: 4gcTimeMs: 629
Chunk TickingHealthy

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

  • Heavy garbage collection2 collections, 174ms total
TPS
min
15.00
avg
19.67
max
20.00
MSPT
min
32.10
avg
37.30
max
44.10
Chunks ticked200 chunks
Percentiles and stability
TPS P1 (worst)15.00
TPS P515.00
TPS P50 (median)20.00
MSPT P9542.05
MSPT P99 (worst)43.52
TPS σ1.238
MSPT σ2.673
TPS derived from MSPT20.00
TPS stability6.2%(Stable)
MSPT stability10.7%(Moderate)
Raw data (3 fields)
gcCount: 2tickSpeed: 20gcTimeMs: 174
Lighting UpdateHealthy

Lighting recomputation throughput on block place / break.

  • Heavy garbage collection1 collections, 98ms total
TPS
min
20.00
avg
20.00
max
20.00
MSPT
min
4.80
avg
7.00
max
11.50
Total lighting updates3227 count
Lighting updates/sec129.1 ops/s
Percentiles and stability
TPS P1 (worst)20.00
TPS P520.00
TPS P50 (median)20.00
MSPT P959.78
MSPT P99 (worst)11.38
TPS σ0.002
MSPT σ1.467
TPS derived from MSPT20.00
TPS stability0.0%(Stable)
MSPT stability5.9%(Stable)
Raw data (2 fields)
gcCount: 1gcTimeMs: 98

Entities

Mob AICritical

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

  • Unfiltered samples usedUsing unfiltered samples (filter rate: 96%)
  • Heavy garbage collection2 collections, 378ms total
  • The run did not hold steadyTPS avg=5.84<19, TPS P1=5.00<15, TPS StdDev=3.29>2
Phase 1
TPS 5.04
MSPT 474.71 ms
Phase 2
TPS 4.95
MSPT 321.00 ms
TPS
min
5.00
avg
5.84
max
20.00
MSPT
min
4.20
avg
369.80
max
1241.80
Percentiles and stability
TPS P1 (worst)5.00
TPS P55.00
TPS P50 (median)5.00
MSPT P95536.87
MSPT P99 (worst)1241.79
TPS σ3.286
MSPT σ185.207
TPS derived from MSPT1.86
TPS stability16.4%(Moderate)
MSPT stability740.8%(Unstable)
Raw data (12 fields)
globalAvgTps: 4.99phase2AvgTps: 4.95gcCount: 2globalAvgMspt: 397.85villagerCount: 2,400phase1AvgTps: 5.04filterRate: 0.96hostileMobCount: 1,200phase1AvgMspt: 474.71houseCount: 120phase2AvgMspt: 321.00gcTimeMs: 378

Mechanics

HopperUnstable

Intensive hopper chain item transfers.

  • Heavy garbage collection3 collections, 264ms total
  • The run did not hold steadyTPS avg=13.52<19, TPS P1=10.00<15, TPS StdDev=2.64>2, TPS min=10.00 (74% of avg)
TPS
min
10.00
avg
13.52
max
19.00
MSPT
min
5.30
avg
7.70
max
9.90
Items transferred38080 items
Transfer efficiency95.2 %
Items/sec1331.9 items/s
Percentiles and stability
TPS P1 (worst)10.00
TPS P510.50
TPS P50 (median)12.00
MSPT P959.29
MSPT P99 (worst)9.73
TPS σ2.639
MSPT σ1.351
TPS derived from MSPT20.00
TPS stability13.2%(Moderate)
MSPT stability5.4%(Stable)
Raw data (2 fields)
gcCount: 3gcTimeMs: 264
ExplosionHealthy

Massive TNT explosions and block destruction.

TPS
min
15.00
avg
19.94
max
20.00
MSPT
min
5.40
avg
8.70
max
16.50
TPS drop during explosions0.00 TPS
Blocks destroyed7317 blocks
Block destruction throughput430.41 blocks/s
Percentiles and stability
TPS P1 (worst)15.00
TPS P520.00
TPS P50 (median)20.00
MSPT P9513.07
MSPT P99 (worst)16.46
TPS σ0.559
MSPT σ2.461
TPS derived from MSPT20.00
TPS stability2.8%(Stable)
MSPT stability9.8%(Stable)
Ticking Tile EntitiesHealthy

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

TPS
min
19.99
avg
20.00
max
20.00
MSPT
min
4.10
avg
7.00
max
12.10
Percentiles and stability
TPS P1 (worst)19.99
TPS P520.00
TPS P50 (median)20.00
MSPT P9510.77
MSPT P99 (worst)11.93
TPS σ0.003
MSPT σ2.024
TPS derived from MSPT20.00
TPS stability0.0%(Stable)
MSPT stability8.1%(Stable)
World SaveHealthy

World save speed and TPS impact during save operations.

TPS
min
20.00
avg
20.00
max
20.00
MSPT
min
3.00
avg
3.80
max
6.40
World save write speed23.43 MB/s
TPS drop during save0.00 TPS
World size saved116.0 MB
Percentiles and stability
TPS P1 (worst)20.00
TPS P520.00
TPS P50 (median)20.00
MSPT P956.37
MSPT P99 (worst)6.37
TPS σ0.003
MSPT σ0.800
TPS derived from MSPT20.00
TPS stability0.0%(Stable)
MSPT stability3.2%(Stable)
Bone Meal GrowthHealthy

Rapid crop and tree growth via bone meal.

TPS
min
20.00
avg
20.00
max
20.00
MSPT
min
4.10
avg
5.90
max
9.90
Percentiles and stability
TPS P1 (worst)20.00
TPS P520.00
TPS P50 (median)20.00
MSPT P958.53
MSPT P99 (worst)9.72
TPS σ0.002
MSPT σ1.314
TPS derived from MSPT20.00
TPS stability0.0%(Stable)
MSPT stability5.3%(Stable)
Raw data (6 fields)
cropsFullyGrown: 452growthRate: 23.09cropCount: 500boneMealUsed: 1,514treesGrown: 56saplingCount: 200

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
6.70
avg
8.90
max
14.70
Total operations102500000 ops
Single-core ops/s (tick-aligned)10233584 ops/s
Percentiles and stability
TPS P1 (worst)20.00
TPS P520.00
TPS P50 (median)20.00
MSPT P9512.24
MSPT P99 (worst)14.67
TPS σ0.003
MSPT σ1.751
TPS derived from MSPT20.00
TPS stability0.0%(Stable)
MSPT stability7.0%(Stable)
Raw data (2 fields)
cpuKernel: int_alubatchSize: 500,000
Multi-Core CPUHealthy

Parallel computation throughput across worker threads.

TPS
min
15.00
avg
19.75
max
20.00
MSPT
min
3.40
avg
4.10
max
5.20
Total operations50000000000 ops
Aggregate ops/s1199590534 ops/s
Percentiles and stability
TPS P1 (worst)15.00
TPS P519.91
TPS P50 (median)20.00
MSPT P954.75
MSPT P99 (worst)5.15
TPS σ1.084
MSPT σ0.350
TPS derived from MSPT20.00
TPS stability5.4%(Stable)
MSPT stability1.4%(Stable)
Raw data (2 fields)
tasksCompleted: 100cpuKernel: int_alu

Memory & Storage

Memory PerformanceHealthy

RAM bandwidth and latency.

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

  • Heavy garbage collection3 collections, 152ms total
TPS
min
19.99
avg
20.00
max
20.00
MSPT
min
5.30
avg
9.10
max
24.90
Sequential read67.54 MB/s
Memcpy throughput3720.18 MB/s
Random write15.34 MB/s
Memory latency178.0 ns
Sequential write33.48 MB/s
Random read6.65 MB/s
Percentiles and stability
TPS P1 (worst)19.99
TPS P520.00
TPS P50 (median)20.00
MSPT P9515.45
MSPT P99 (worst)21.86
TPS σ0.002
MSPT σ3.278
TPS derived from MSPT20.00
TPS stability0.0%(Stable)
MSPT stability13.1%(Moderate)
Raw data (2 fields)
gcCount: 3gcTimeMs: 152
Disk PerformanceHealthy

Sequential and random 4K read/write performance.

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

  • Heavy garbage collection11 collections, 568ms total
TPS
min
17.41
avg
20.00
max
20.00
MSPT
min
3.00
avg
6.00
max
24.40
4K read latency p99840.8 µs
Sequential read452.58 MB/s
Random 4K write14.71 MB/s
4K read latency p95454.6 µs
Random 4K write IOPS3766 IOPS
Random 4K read110.76 MB/s
4K write latency avg1057.3 µs
4K read latency p503.6 µs
4K write latency p996300.3 µs
4K write latency p50391.0 µs
4K write latency p954968.4 µs
Sequential write283.17 MB/s
4K read latency avg139.0 µs
Random 4K read IOPS28355 IOPS
Percentiles and stability
TPS P1 (worst)19.99
TPS P519.99
TPS P50 (median)20.00
MSPT P9511.11
MSPT P99 (worst)16.87
TPS σ0.065
MSPT σ2.682
TPS derived from MSPT20.00
TPS stability0.3%(Stable)
MSPT stability10.7%(Moderate)
Raw data (3 fields)
cacheInvalidated: yesgcCount: 11gcTimeMs: 568

Network

Network (NBT)Unstable

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

  • Heavy garbage collection3 collections, 26ms total
  • The run did not hold steadyTPS avg=18.45<19, TPS StdDev=2.33>2
TPS
min
15.00
avg
18.45
max
20.00
MSPT
min
53.20
avg
55.80
max
66.30
Objects processed20000 obj
NBT serialization throughput4.71 MB/s
Objects/sec870 obj/s
Bytes processed113531305 B
Percentiles and stability
TPS P1 (worst)15.00
TPS P515.00
TPS P50 (median)20.00
MSPT P9558.94
MSPT P99 (worst)66.29
TPS σ2.326
MSPT σ1.865
TPS derived from MSPT16.97
TPS stability11.6%(Moderate)
MSPT stability7.5%(Stable)
Raw data (2 fields)
gcCount: 3gcTimeMs: 26
›Machine and serverIntel(R) Core(TM) i5-8350U CPU @ 1.70GHz · Paper · 26.1.2
CPU Information
ModelIntel(R) Core(TM) i5-8350U CPU @ 1.70GHz
VendorGenuineIntel
Physical Cores4
Logical Cores8
Max Frequency3.600427 GHz
Server Information
Server TypePaper (26.1.2-70-70eaed6 (MC: 26.1.2))
Minecraft Version26.1.2
Bukkit Version26.1.2.build.70-stable
Java Version25.0.3
OSLinux
Location🇵🇱 Poland
Plugins19
JVM Memory
Max Heap12.00 GB
Allocated12.00 GB
Used3.90 GB
Free8.10 GB
Heap Usage32.5%
JVM Flags
-Xms12G -Xmx12G -XX:+UseG1GC -XX:+ParallelRefProcEnabled -XX:MaxGCPauseMillis=200 -XX:+UnlockExperimentalVMOptions -XX:+DisableExplicitGC -XX:+AlwaysPreTouch -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 -XX:ParallelGCThreads=4 -XX:ConcGCThreads=2
Dispersed Zones8

Score Breakdown

Detailed sub-category scores

Hardware

Memory9,708
Disk12,559
Multi-Core26,977

Gameplay

Exploration78,934
Entities52,420
Mechanics36,489

Multipliers

Synergy Bonusx0.959
Stability Bonusx0.911
Duration Mult.x0.916