A performance regression of the synthetix benchmark was identified in #755 (GitHub CI).
I did some differential profiling between 6efbd64dd (old) and 682dbc5 (new) but wasn't able to identify the cause yet.
To construct the shown differential flamegraphs, I ran the following commands:
PERF=/workspaces/WSL2-Linux-Kernel/tools/perf/perf CARGO_PROFILE_RELEASE_DEBUG=true cargo flamegraph -o flamegraph_synthetix_old.svg --root --release --post-process "tee synthetix-old.folded" -- scenario synthetix_9a3a109f.jsonl (for the old commit)
PERF=/workspaces/WSL2-Linux-Kernel/tools/perf/perf CARGO_PROFILE_RELEASE_DEBUG=true cargo flamegraph -o flamegraph_synthetix_new.svg --root --release --post-process "tee synthetix-new.folded" -- scenario synthetix_9a3a109f.jsonl (for the new commit)
inferno-diff-folded synthetix-old.folded synthetix-new.folded | inferno-flamegraph --negate > diff2.svg
This was inspired by this blogpost.


A performance regression of the
synthetixbenchmark was identified in #755 (GitHub CI).I did some differential profiling between
6efbd64dd(old) and682dbc5(new) but wasn't able to identify the cause yet.To construct the shown differential flamegraphs, I ran the following commands:
PERF=/workspaces/WSL2-Linux-Kernel/tools/perf/perf CARGO_PROFILE_RELEASE_DEBUG=true cargo flamegraph -o flamegraph_synthetix_old.svg --root --release --post-process "tee synthetix-old.folded" -- scenario synthetix_9a3a109f.jsonl(for the old commit)PERF=/workspaces/WSL2-Linux-Kernel/tools/perf/perf CARGO_PROFILE_RELEASE_DEBUG=true cargo flamegraph -o flamegraph_synthetix_new.svg --root --release --post-process "tee synthetix-new.folded" -- scenario synthetix_9a3a109f.jsonl(for the new commit)inferno-diff-folded synthetix-old.folded synthetix-new.folded | inferno-flamegraph --negate > diff2.svgThis was inspired by this blogpost.