Skip to content

Massively improve performance#41

Merged
jupyterkat merged 1 commit intomasterfrom
idb2
Jan 17, 2026
Merged

Massively improve performance#41
jupyterkat merged 1 commit intomasterfrom
idb2

Conversation

@tigercat2000
Copy link
Copy Markdown
Contributor

@tigercat2000 tigercat2000 commented Jan 17, 2026

This fixes two problems that were slowing IDB down a ton:

  1. tracing::instrument by default calls Debug::fmt on each argument each time a function is called - this was the main issue for IDB, as it has functions taking entire DMIs as arguments, which have default Debug implementations that write every byte
  2. https://github.com/spacestation13/BYONDDiffBots/pull/40/files removed par_values on fn full_render(), which meant that full renders (new file, deleted file) were creating states serially. This happened because IndexMap::par_value is locked behind a feature flag that we at some point stopped enabling, yay for transitive feature flags.

Profile captured over the first 1000 images generated by tigercat2000/IconDiffBot2-test#22

Profile overview before:
https://files.catbox.moe/sswsdu.png

Profile overview after:
https://files.catbox.moe/qmaqeb.png

Main difference is that the tokio-runtime-worker thread is no longer pegged at 99% CPU the entire time.

@jupyterkat jupyterkat merged commit 86050ef into master Jan 17, 2026
2 checks passed
@tigercat2000 tigercat2000 deleted the idb2 branch January 17, 2026 13:37
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