Files
Pumpkin/docs/about/benchmarks.md
2024-10-15 18:42:26 +02:00

4.4 KiB

Benchmarks

Here i compare common Minecraft servers against Pumpkin.

Is this comparsion fair?. Not really, While you could say Pumpkin has currently way less features than other Servers which should use less resources, You should also consider that other Servers had already Years for Optimazations, Espacilly Vanilla forks which don't have to go trough the pain of rewriting the entire vanilla logic are free to focus on optimations

ALL TESTS HAVE BEEN RAN MULTIPLE TIMES TO GUARANTEE CONSISTENT RESULTS

ALL PLAYERS DID NOT MOVE WHEN SPAWNING, ONLY THE INITAL 8 CHUNKS WHERE LOADED, THATS ALSO THE REASON CPU MAX IS USALLY HIGH ON FIRST PLAYER ALL SERVERS USED ITS OWN TERRAIN GENERATION, NO WORLD WAS PRE-LOADED

Screenshot From 2024-10-15 16-42-53

Specefications

Technical

Software

  • Distribution: Manjaro Linux
  • Architecture: x86_64 (64-bit)
  • Kernel Version: 6.11.3-arch1-1

Hardware

  • Motherboard: MAG B650 TOMAHAWK WIFI
  • CPU: AMD Ryzen 7600X 6-Core
  • RAM: Corsair 2x16GB DDR5 6000Mhz
  • Storage: Samsung 990 PRO 1TB PCIe 4.0 M.2 SSD
  • Cooling: be quiet Dark Rock Elite

Rust

  • Toolchain: stable-x86_64-unknown-linux-gnu (1.81.0)
  • Rust Compiler: rustc 1.81.0 (eeb90cda1 2024-09-04)

Java

  • JDK Version: OpenJDK 23 64-Bit 2024-09-17
  • JRE Version: OpenJDK Runtime Environment (build 23+37)
  • Vendor: Oracle

Game

  • Minecraft version: 1.21.1
  • View distance: 10
  • Simulated distance: 10
  • Online mode: false
  • Rcon: false

online mode was disabled, so i can easier test with non premium accounts

Pumpkin

Build: 8febc50

Compile args:--release

Run args:

File Size: 12,3MB

Startup time: 8ms

Shutdown time: 0ms

Players RAM CPU idle CPU Max
0 392,2KB 0,0% 0,0%
1 24,9MB 0,0% 4,0%
2 25,1MB 0,0% 0,6%
5 26,0MB 0,0% 1,0%
10 27,1MB 0,0% 1,5%

pumpkin does cache already loaded chunks, resulting in no extra RAM besides player data and minimal CPU usage

Vanilla

Release: 1.21.1

Compile args:

Run args: nogui

File Size: 51,6MB

Startup time: 7sec

Shutdown time: 4sec

Players RAM CPU idle CPU Max
0 860MB 0,1-0,3% 51,0%
1 1.5GB 0,9-1% 41,0%
2 1.6GB 1,0-1,1% 10,0%
5 1.8GB 2,0% 20,0%
10 2,2GB 4,0% 24,0%

Paper

Build: 122

Compile args:

Run args: nogui

File Size: 49,4MB

Startup time: 7sec

Shutdown time: 3sec

Players RAM CPU idle CPU Max
0 1.1GB 0,2-0,3% 36,0%
1 1.7GB 0,9-1,0% 47,0%
2 1.8GB 1-1-1,0% 10,0%
5 1.9GB 1.5% 15,0%
10 2GB 3,0% 20,0%

Purpur

Build: 2324

Compile args:

Run args: nogui

File Size: 53,1MB

Startup time: 8sec

Shutdown time: 4sec

Players RAM CPU idle CPU Max
0 1.4GB 0,2-0,3% 25,0%
1 1.6GB 0,7-1,0% 35,0%
2 1.7GB 1,1-1,3% 9,0%
5 1.9GB 1.6% 20,0%
10 2.2GB 2-2,5,0% 26,0%

Minestom

Commit: 0ca1dda2fe

Compile args:

Run args:

Language: Kotlin 2.0.0

File Size: 2,8MB (Library)

Startup time: 310ms

Shutdown time: 0ms

Used example code from

Players RAM CPU idle CPU Max
0 228MB 0,1-0,3% 1,0%
1 365MB 0,9-1,0% 5,0%
2 371MB 1-1,1% 4,0%
5 390MB 1,0% 6,0%
10 421MB 3,0% 9,0%

Benchmarked at 15.10.2024 18:34 (UTC+2)