improve profile load speed by %30 with yyjson parser #997

Closed
opened 2026-04-05 16:40:53 +02:00 by MrUnknownDE · 0 comments
Owner

Originally created by @yw4z on 1/22/2026

TEST PURPOSES ONLY

this effects app launch time. i expected much more improvement but didnt happen :)

boost::json gave about %10 improvement

glaze not compatible with project because it requires C++20 and above

nlohmann parser

Total: 5400ms

load_system_presets_from_json
Time: 2605.42ms
load_presets user
Time: 2805.03ms

yyjson parser with string / operator optimizations

Total: 3890ms (%28 less)

load_system_presets_from_json
Time: 1914.75ms
load_presets user
Time: 1973.26ms

simdjson parser (first tests)

Total: 3770ms (%30 less)

load_system_presets_from_json
Time: 1857.21ms
load_presets user
Time: 1912.25ms

NOTES

• test made with all machines selected. orca loading only selected machines on start
• i left timers if you want to benchmark. set debug level to fatal for minimal log. search "Time: " on log
Screenshot-20260122234649

*Originally created by @yw4z on 1/22/2026* ### TEST PURPOSES ONLY this effects app launch time. i expected much more improvement but didnt happen :) boost::json gave about %10 improvement glaze not compatible with project because it requires C++20 and above ### nlohmann parser Total: 5400ms >load_system_presets_from_json > Time: 2605.42ms >load_presets user > Time: 2805.03ms ### yyjson parser with string / operator optimizations Total: 3890ms (%28 less) >load_system_presets_from_json > Time: 1914.75ms >load_presets user > Time: 1973.26ms ### simdjson parser (first tests) Total: 3770ms (%30 less) >load_system_presets_from_json > Time: 1857.21ms >load_presets user > Time: 1912.25ms ### NOTES • test made with all machines selected. orca loading only selected machines on start • i left timers if you want to benchmark. set debug level to fatal for minimal log. search "Time: " on log <img width="786" height="61" alt="Screenshot-20260122234649" src="https://github.com/user-attachments/assets/7a433b11-81ab-48a9-ad04-4b0d58ebbcf1" />
Sign in to join this conversation.
No Label
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: github/OrcaSlicer#997