https://github.com/tbluef/nbtlibrarycomparison
Small speed test for some NBT libraries
https://github.com/tbluef/nbtlibrarycomparison
Last synced: 12 months ago
JSON representation
Small speed test for some NBT libraries
- Host: GitHub
- URL: https://github.com/tbluef/nbtlibrarycomparison
- Owner: TBlueF
- Created: 2024-01-26T12:46:42.000Z (over 2 years ago)
- Default Branch: master
- Last Pushed: 2024-03-05T14:58:14.000Z (over 2 years ago)
- Last Synced: 2025-03-05T23:12:06.710Z (over 1 year ago)
- Language: Java
- Size: 74.2 KB
- Stars: 0
- Watchers: 1
- Forks: 3
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# NBT Library Comparison
## Build
Run `./gradlew clean shadowJar`
You'll find the built jar in `./build/libs`.
## Run
To run, put the jar file next to a folder named `regions` containing all the region-files you want to run the test against.
Then run `java jar NBTLibraryComparison-1.0-all.jar `
## Test Setup
Tests were run on Windows 10 | Java 17
CPU: i7-8700K | RAM: 64GB 4000 MHz
Disk: Samsung SSD 970 EVO Plus
The same region-files were used for each test-run.
209 region files with 164824 chunks.
The world used is the Hermitcraft S9 world-download.
The command to run the tests: `java -jar -Xms1G -Xmx1G .\NBTLibraryComparison-1.0-all.jar `
## Test results
| library | duration (ns) | chunks/s | notes |
|---------------|---------------|----------|---------------------------------------------------------------------------------------|
| bluenbt | 30995222500 | 5317.7 | - |
| bluenbtDirect | 30590971800 | 5388.0 | BlueNBT using the low-level NBTReader directly |
| bluenbtFull | 44712561900 | 3686.3 | BlueNBT but loading the entire chunk-data into a Map instead of only the data we want |
| kyori | 50787246000 | 3245.4 | - |
| querz | 42590299800 | 3870.0 | - |
| chunky | 42282843500 | 3898.1 | - |