Skip to content

Comments

perf: use IndexBitSet instead of FxHashSet<*Idx>#8344

Closed
sapphi-red wants to merge 1 commit into02-16-feat_rolldown_utils_add_indexbitset_from
02-16-perf_use_indexbitset_instead_of_fxhashset_idx_
Closed

perf: use IndexBitSet instead of FxHashSet<*Idx>#8344
sapphi-red wants to merge 1 commit into02-16-feat_rolldown_utils_add_indexbitset_from
02-16-perf_use_indexbitset_instead_of_fxhashset_idx_

Conversation

@sapphi-red
Copy link
Member

@sapphi-red sapphi-red commented Feb 16, 2026

Use IndexBitSet instead of FxHashSet<*Idx> for less memory usage and less hash calculation.

Copy link
Member Author

sapphi-red commented Feb 16, 2026

Warning

This pull request is not mergeable via GitHub because a downstack PR is open. Once all requirements are satisfied, merge this PR as a stack on Graphite.
Learn more


How to use the Graphite Merge Queue

Add the label graphite: merge-when-ready to this PR to add it to the merge queue.

You must have a Graphite account in order to use the merge queue. Sign up using this link.

An organization admin has enabled the Graphite Merge Queue in this repository.

Please do not merge from GitHub as this will restart CI on PRs being processed by the merge queue.

This stack of pull requests is managed by Graphite. Learn more about stacking.

@sapphi-red sapphi-red marked this pull request as ready for review February 16, 2026 07:05
@github-actions
Copy link
Contributor

github-actions bot commented Feb 16, 2026

Benchmarks Rust

  • target: 02-16-feat_rolldown_utils_add_indexbitset_(45d177a)
  • pr: 02-16-perf_use_indexbitset_instead_of_fxhashset_idx_(5ea0ee7)
group                                                        pr                                     target
-----                                                        --                                     ------
bundle/bundle@multi-duplicated-top-level-symbol              1.00     68.4±1.77ms        ? ?/sec    1.07     73.2±6.17ms        ? ?/sec
bundle/bundle@multi-duplicated-top-level-symbol-sourcemap    1.00     74.5±1.50ms        ? ?/sec    1.05     78.3±1.90ms        ? ?/sec
bundle/bundle@rome_ts                                        1.01     97.8±3.16ms        ? ?/sec    1.00     97.3±1.58ms        ? ?/sec
bundle/bundle@rome_ts-sourcemap                              1.00    110.7±2.56ms        ? ?/sec    1.01    111.8±1.78ms        ? ?/sec
bundle/bundle@threejs                                        1.00     35.8±0.61ms        ? ?/sec    1.00     35.6±2.26ms        ? ?/sec
bundle/bundle@threejs-sourcemap                              1.01     40.8±0.58ms        ? ?/sec    1.00     40.5±0.85ms        ? ?/sec
bundle/bundle@threejs10x                                     1.00    353.5±2.94ms        ? ?/sec    1.01    358.1±6.72ms        ? ?/sec
bundle/bundle@threejs10x-sourcemap                           1.00    417.2±3.54ms        ? ?/sec    1.03    428.8±4.14ms        ? ?/sec
scan/scan@rome_ts                                            1.00     75.3±1.18ms        ? ?/sec    1.02     76.6±1.46ms        ? ?/sec
scan/scan@threejs                                            1.01     26.9±1.70ms        ? ?/sec    1.00     26.6±0.32ms        ? ?/sec
scan/scan@threejs10x                                         1.00    262.4±2.76ms        ? ?/sec    1.01    266.0±3.64ms        ? ?/sec

@sapphi-red
Copy link
Member Author

Benchmarks Rust

Hmm, this one might be within the error margin 🤔

@graphite-app graphite-app bot force-pushed the 02-16-feat_rolldown_utils_add_indexbitset_ branch from 06e861d to 45d177a Compare February 16, 2026 08:20
@graphite-app graphite-app bot force-pushed the 02-16-perf_use_indexbitset_instead_of_fxhashset_idx_ branch from 9fe4f5a to 5ea0ee7 Compare February 16, 2026 08:20
graphite-app bot pushed a commit that referenced this pull request Feb 16, 2026
@sapphi-red
Copy link
Member Author

Hmm, it seems this doesn't have any effect

@sapphi-red sapphi-red closed this Feb 16, 2026
graphite-app bot pushed a commit that referenced this pull request Feb 16, 2026
Add `IndexBitSet` which is a thin wrapper around `BitSet` for #8344
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