Performance Philosophy
Paper’s performance improvements focus on three key areas:- Chunk loading and generation - Optimized multi-threaded chunk system
- Entity management - Intelligent entity activation and ticking
- Network optimization - Efficient packet handling and chunk sending
Core Performance Features
Multi-threaded Chunk System
Paper uses the Moonrise chunk system, which provides parallel chunk loading and generation through worker and I/O thread pools.The Moonrise system automatically scales worker threads based on your CPU core count. Manual configuration is available in
config/paper-global.yml.config/paper-global.yml):
- Default worker threads:
(CPU cores / 2) / 2for systems with more than 4 cores - Minimum: 1 worker thread on low-core systems
- I/O threads: At least 1 thread for disk operations
Entity Activation Range
Paper inherits Spigot’s Entity Activation Range (EAR) system, which reduces entity ticking for entities far from players. Configuration (config/spigot.yml):
Per-Player Mob Spawning
Paper implements per-player mob spawning, which distributes mob spawning more evenly across players. Configuration (config/paper-world-defaults.yml):
Performance Monitoring
Using Spark
Paper includes Spark, a performance profiler, enabled by default. Configuration (config/paper-global.yml):
View Distance vs Simulation Distance
Paper distinguishes between view distance (what chunks players can see) and simulation distance (what chunks are actively ticked). Configuration (config/spigot.yml):
- View distance: Controls chunk rendering (range: 3-32)
- Simulation distance: Controls chunk ticking for entities, redstone, crops
Reducing simulation distance while maintaining view distance provides visual quality while improving performance.
Optimization Best Practices
1. Configure Autosave Intervals
Reduce autosave frequency to minimize I/O spikes:2. Optimize Hoppers
Configuration (config/spigot.yml):
hopper-transfer reduces hopper checks per second.
3. Entity Tracking Range
Reduce entity tracking ranges to decrease network usage:4. Disable Unused Features
Disable features you don’t need:Configuration Files Reference
Paper uses multiple configuration files:| File | Scope | Purpose |
|---|---|---|
config/paper-global.yml | Global | Server-wide settings (chunk system, network) |
config/paper-world-defaults.yml | Per-world | World-specific defaults (entities, chunks) |
config/spigot.yml | Per-world | Legacy Spigot settings (activation range, tracking) |
Hardware Recommendations
For optimal Paper performance:- CPU: Modern CPU with high single-thread performance
- RAM: 6-10GB for 10-20 players, 10-16GB for 50+ players
- Storage: NVMe SSD strongly recommended for chunk I/O
- Network: Low-latency connection (< 50ms to players)