Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

General cb performance improvement & dumpitem command #4

Merged
merged 17 commits into from
Dec 14, 2024

Conversation

HaHaWTH
Copy link
Collaborator

@HaHaWTH HaHaWTH commented Dec 12, 2024

This pull request includes following changes:

  • Use hidden class for event executors(replaces ASM event executor)
  • Make Paper explosion optimization work
  • Virtual thread for async chat thread
  • Force disable Timings and mark as forRemoval
  • Add /catserver dumpitem command
  • Deprecate ASM event executors
  • Faster CraftServer#getWorlds list creation(frequently used in plugins)
  • Replace world map with optimized collections
  • Strip square brackets if logger is empty
  • Fix /chunkstats command & typo

/catserver dumpitem example output

Benchmark result(ASM)
Benchmark                                             Mode      Cnt      Score   Error  Units
EventExecutorBenchmark.callEvent                      avgt        5     89,379 ± 3,646  ns/op
EventExecutorBenchmark.callEvent                    sample  1132512    105,589 ± 0,433  ns/op
EventExecutorBenchmark.callEvent:callEvent·p0.00    sample              90,000          ns/op
EventExecutorBenchmark.callEvent:callEvent·p0.50    sample             100,000          ns/op
EventExecutorBenchmark.callEvent:callEvent·p0.90    sample             110,000          ns/op
EventExecutorBenchmark.callEvent:callEvent·p0.95    sample             111,000          ns/op
EventExecutorBenchmark.callEvent:callEvent·p0.99    sample             131,000          ns/op
EventExecutorBenchmark.callEvent:callEvent·p0.999   sample             230,000          ns/op
EventExecutorBenchmark.callEvent:callEvent·p0.9999  sample            5461,990          ns/op
EventExecutorBenchmark.callEvent:callEvent·p1.00    sample           70272,000          ns/op
Benchmark result(HiddenClass)
Benchmark                                             Mode      Cnt       Score   Error  Units
EventExecutorBenchmark.callEvent                      avgt        5      72,875 ± 2,629  ns/op
EventExecutorBenchmark.callEvent                    sample  1527204      86,215 ± 1,868  ns/op
EventExecutorBenchmark.callEvent:callEvent·p0.00    sample               70,000          ns/op
EventExecutorBenchmark.callEvent:callEvent·p0.50    sample               80,000          ns/op
EventExecutorBenchmark.callEvent:callEvent·p0.90    sample               90,000          ns/op
EventExecutorBenchmark.callEvent:callEvent·p0.95    sample               91,000          ns/op
EventExecutorBenchmark.callEvent:callEvent·p0.99    sample              120,000          ns/op
EventExecutorBenchmark.callEvent:callEvent·p0.999   sample              181,000          ns/op
EventExecutorBenchmark.callEvent:callEvent·p0.9999  sample             5888,000          ns/op
EventExecutorBenchmark.callEvent:callEvent·p1.00    sample           855040,000          ns/op

@KasumiNova KasumiNova merged commit 52d8f2c into NovaEngineering-Source:main Dec 14, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants