Skip to content

Entity Performans Karşılaştırması

WARNING

Bu sayfa, Leaf ve Paper sunucu uygulamaları arasında entity işleme için performans karşılaştırma verilerini sunar. Bu sonuçlar, belirli bir test senaryosunu temsil eder ve donanım, yapılandırma ve diğer faktörlere bağlı olarak değişiklik gösterebilir.

Test Environment

Version: 1.21.4
CPU: i7-10750H
JVM: GraalVM 21
Memory: 6GB
Leaf Commit: 9db6bfb
Paper Commit: a838a88
Seed: 2618050634530417871
Coords: 183.5 67.00 -201.5

JVM Flags

-Xms6144M -Xmx6144M --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

Performance Comparison (MSPT - lower is better)

Default Config
0 mspt
Paper
0 mspt
Leaf
Increased Mob Caps
0 mspt
Paper
0 mspt
Leaf
0 mspt
Leaf+Async

Performance Improvement

0%
Default Configuration
Leaf (0 mspt) vs Paper (0 mspt)
0%
Leaf with Increased Mob Caps
Leaf (0 mspt) vs Paper (0 mspt)
0%
Leaf+Async with Increased Mob Caps
Leaf+Async (0 mspt) vs Paper (0 mspt)

Test Yapılandırması

Varsayılan Ayarlar Yapılandırması

Her iki sunucu, bukkit.yml, spigot.yml ve diğer yapılandırma dosyalarında varsayılan ayarlarla test edildi. Bu temel test, tipik sunucu koşulları altında performansı temsil eder.

Artırılmış Canavar Sınırları Yapılandırması

bukkit.yml dosyasında değiştirilen ayarlar:

  • monsters: 70 → 700
  • animals: 10 → 100

Diğer tüm yapılandırma dosyaları varsayılan ayarlarında kaldı. Bu test, yoğun sunucularda sıkça görülen yüksek entity sayılı bir senaryoyu simüle eder.

Leaf+Async Yapılandırması

leaf-global.yml dosyasında minimal asenkron seçenekler etkinleştirildi:

yaml
async:
  async-entity-tracker:
    enabled: true
  async-pathfinding:
    enabled: true