JPenuchot / ctbench

Compiler-assisted variable size benchmarking for the study of C++ metaprogram compile times.

Home Page:https://jpenuchot.github.io/ctbench-docs/

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Optimization

JPenuchot opened this issue · comments

commented

nlohmann::json has a nice interface but performance doesn't scale for what we're doing (processing hundreds of megabytes of JSON trace events).

Running ctbench-grapher-plot through perf shows that nlohmann::json-related calls are the ones that account for most overhead.

commented

Most of the time is actually spent in gnuplot calls according to profiling data gathered with Tracy. Moving away from nlohmann::json would only cut a small part of the graph generation time. Performance gains will mostly depend on this issue: sciplot/sciplot#104