A fairly noisy week (though most of that has been dropped from this report). Overall we saw several improvements, and ended the week on a net positive. Memory usage is down around 1.5-3% over the course of the week, primarily due to RawVec polymorphization and CloneToUninit impl expansion.
Triage done by @simulacrum. Revision range: 9cb1998e..4fe1e2bd
Summary:
(instructions:u) | mean | range | count |
---|---|---|---|
Regressions ❌ (primary) |
0.4% | [0.2%, 1.7%] | 124 |
Regressions ❌ (secondary) |
0.5% | [0.1%, 1.4%] | 103 |
Improvements ✅ (primary) |
-1.3% | [-4.3%, -0.2%] | 50 |
Improvements ✅ (secondary) |
-1.4% | [-3.3%, -0.2%] | 15 |
All ❌✅ (primary) | -0.1% | [-4.3%, 1.7%] | 174 |
1 Regressions, 1 Improvements, 3 Mixed; 1 of them in rollups 53 artifact comparisons made in total
Fix problems with assoc expr token collection #128725 (Comparison Link)
(instructions:u) | mean | range | count |
---|---|---|---|
Regressions ❌ (primary) |
0.3% | [0.2%, 0.3%] | 5 |
Regressions ❌ (secondary) |
0.3% | [0.2%, 0.5%] | 5 |
Improvements ✅ (primary) |
- | - | 0 |
Improvements ✅ (secondary) |
- | - | 0 |
All ❌✅ (primary) | 0.3% | [0.2%, 0.3%] | 5 |
Appears to be a real change in behavior (pre-merge showed fewer regressions) but this is a correctness fix, so accepting them.
Rework MIR inlining debuginfo so function parameters show up in debuggers. #128861 (Comparison Link)
(instructions:u) | mean | range | count |
---|---|---|---|
Regressions ❌ (primary) |
- | - | 0 |
Regressions ❌ (secondary) |
2.3% | [2.3%, 2.3%] | 1 |
Improvements ✅ (primary) |
-1.2% | [-1.4%, -1.1%] | 6 |
Improvements ✅ (secondary) |
-1.2% | [-1.3%, -1.2%] | 2 |
All ❌✅ (primary) | -1.2% | [-1.4%, -1.1%] | 6 |
An improvement on many current benchmarks; the one regression is a spurious change.
Apply "polymorphization at home" to RawVec #126793 (Comparison Link)
(instructions:u) | mean | range | count |
---|---|---|---|
Regressions ❌ (primary) |
0.5% | [0.2%, 1.5%] | 89 |
Regressions ❌ (secondary) |
0.4% | [0.1%, 1.3%] | 96 |
Improvements ✅ (primary) |
-1.1% | [-3.8%, -0.2%] | 54 |
Improvements ✅ (secondary) |
-1.2% | [-2.9%, -0.3%] | 13 |
All ❌✅ (primary) | -0.1% | [-3.8%, 1.5%] | 143 |
An improvement on many current benchmarks, though some regressions. Overall a net positive. Also reduced memory usage by about 1% for many of our benchmarks, which is a great win!
Support reading thin archives in ArArchiveBuilder #128936 (Comparison Link)
(instructions:u) | mean | range | count |
---|---|---|---|
Regressions ❌ (primary) |
0.3% | [0.2%, 0.4%] | 14 |
Regressions ❌ (secondary) |
0.4% | [0.4%, 0.4%] | 1 |
Improvements ✅ (primary) |
- | - | 0 |
Improvements ✅ (secondary) |
-2.3% | [-2.3%, -2.3%] | 1 |
All ❌✅ (primary) | 0.3% | [0.2%, 0.4%] | 14 |
Regressions looks genuine, though relatively rare in our benchmark suite. It might be worth doing some profiling of the Rust archive writer to see if there's opportunities for optimization since it presumably hasn't received much attention so far.
Rollup of 6 pull requests #129202 (Comparison Link)
(instructions:u) | mean | range | count |
---|---|---|---|
Regressions ❌ (primary) |
- | - | 0 |
Regressions ❌ (secondary) |
0.6% | [0.1%, 2.2%] | 5 |
Improvements ✅ (primary) |
-0.9% | [-1.7%, -0.3%] | 4 |
Improvements ✅ (secondary) |
-1.4% | [-2.2%, -0.6%] | 2 |
All ❌✅ (primary) | -0.9% | [-1.7%, -0.3%] | 4 |
Regression on match-stress looks genuine but likely doesn't merit deeper investigation given that this is in a rollup (and I don't see obvious match-stress-implicating PRs in the list).