Performance Benchmarks
Core load checks live as Go benchmarks so normal unit tests stay fast.
In this section
Related section pages:
Server Core Benchmarks
Use these benchmarks to compare changes in runtime pressure, allocations, and lock contention.
benchmarks.sh
go test ./core/server -run ^$ -bench "Benchmark(WorldSetBlockParallel|GiveItemManyPlayersParallel|MoveAndDrainPlayerUpdatesParallel|JoinPlayersSequential)quot; -benchmem -benchtime=3s -count=3Covered Scenarios
- BenchmarkWorldSetBlockParallel: parallel server-owned block mutations through Server.SetBlock.
- BenchmarkGiveItemManyPlayersParallel: parallel inventory service writes across many online players.
- BenchmarkMoveAndDrainPlayerUpdatesParallel: player movement plus outbox/view aggregation.
- BenchmarkJoinPlayersSequential: player/entity/view registration cost.
CPU And Lock Contention
For scheduler and lock contention experiments, run selected benchmarks across CPU counts.
cpu-benchmarks.sh
go test ./core/server -run ^$ -bench BenchmarkMoveAndDrainPlayerUpdatesParallel -benchmem -cpu 1,2,4,8,12