|
| 1 | +# 2024-12-09 Triage Log |
| 2 | + |
| 3 | +A pretty quiet week, with both few PRs landed and no significant changes in performance. |
| 4 | + |
| 5 | +Triage done by **@simulacrum**. |
| 6 | +Revision range: [490b2cc0..1b3fb316](https://perf.rust-lang.org/?start=490b2cc09860dd62a7595bb07364d71c12ce4e60&end=1b3fb316751227d30b1523ed0e3f00d83956d4d0&absolute=false&stat=instructions%3Au) |
| 7 | + |
| 8 | +**Summary**: |
| 9 | + |
| 10 | +| (instructions:u) | mean | range | count | |
| 11 | +|:----------------------------------:|:-----:|:--------------:|:-----:| |
| 12 | +| Regressions ❌ <br /> (primary) | 0.3% | [0.1%, 1.4%] | 84 | |
| 13 | +| Regressions ❌ <br /> (secondary) | 0.3% | [0.1%, 0.7%] | 45 | |
| 14 | +| Improvements ✅ <br /> (primary) | -0.4% | [-1.2%, -0.1%] | 42 | |
| 15 | +| Improvements ✅ <br /> (secondary) | -0.8% | [-1.2%, -0.4%] | 19 | |
| 16 | +| All ❌✅ (primary) | 0.1% | [-1.2%, 1.4%] | 126 | |
| 17 | + |
| 18 | + |
| 19 | +0 Regressions, 0 Improvements, 7 Mixed; 4 of them in rollups |
| 20 | +25 artifact comparisons made in total |
| 21 | + |
| 22 | +#### Regressions |
| 23 | + |
| 24 | +None this week. |
| 25 | + |
| 26 | +#### Improvements |
| 27 | + |
| 28 | +Remove polymorphization [#133883](https://github.com/rust-lang/rust/pull/133883) [(Comparison Link)](https://perf.rust-lang.org/compare.html?start=75716b45105e443199ce9800c7009ddfd6d2be53&end=ca13e9169fbbbb126190631b5a1e3e20053a52c1&stat=instructions:u) |
| 29 | + |
| 30 | +| (instructions:u) | mean | range | count | |
| 31 | +|:----------------------------------:|:-----:|:--------------:|:-----:| |
| 32 | +| Regressions ❌ <br /> (primary) | - | - | 0 | |
| 33 | +| Regressions ❌ <br /> (secondary) | 0.5% | [0.3%, 0.7%] | 6 | |
| 34 | +| Improvements ✅ <br /> (primary) | -0.5% | [-1.3%, -0.1%] | 91 | |
| 35 | +| Improvements ✅ <br /> (secondary) | -0.7% | [-1.7%, -0.3%] | 21 | |
| 36 | +| All ❌✅ (primary) | -0.5% | [-1.3%, -0.1%] | 91 | |
| 37 | + |
| 38 | +This is essentially a solid improvement. We still did the evaluation of |
| 39 | +polymorphization even if it wasn't actually enabled, so this just saves that |
| 40 | +time by dropping all of that computation. |
| 41 | + |
| 42 | +#### Mixed |
| 43 | + |
| 44 | +Rollup of 6 pull requests [#133841](https://github.com/rust-lang/rust/pull/133841) [(Comparison Link)](https://perf.rust-lang.org/compare.html?start=2633e019298f8d9f671c8f3d0d3348ce6fa1b8aa&end=733616f7236b4be140ce851a30b3bb06532b9364&stat=instructions:u) |
| 45 | + |
| 46 | +| (instructions:u) | mean | range | count | |
| 47 | +|:----------------------------------:|:-----:|:--------------:|:-----:| |
| 48 | +| Regressions ❌ <br /> (primary) | 0.7% | [0.2%, 1.4%] | 10 | |
| 49 | +| Regressions ❌ <br /> (secondary) | 0.6% | [0.6%, 0.6%] | 1 | |
| 50 | +| Improvements ✅ <br /> (primary) | -0.3% | [-0.5%, -0.1%] | 2 | |
| 51 | +| Improvements ✅ <br /> (secondary) | -0.2% | [-0.4%, -0.1%] | 5 | |
| 52 | +| All ❌✅ (primary) | 0.5% | [-0.5%, 1.4%] | 12 | |
| 53 | + |
| 54 | +Mixed results, but seems like a real regression on a few larger benchmarks in |
| 55 | +opt, non-incremental scenarios. Possibly due to |
| 56 | +https://github.com/rust-lang/rust/pull/133798, trying an unrolled build to |
| 57 | +verify. |
| 58 | + |
| 59 | +Rollup of 8 pull requests [#133940](https://github.com/rust-lang/rust/pull/133940) [(Comparison Link)](https://perf.rust-lang.org/compare.html?start=c94848c046d29f9a80c09aae758e27e418a289f2&end=706141b8d9090228343340378b1d4a2b095fa1fb&stat=instructions:u) |
| 60 | + |
| 61 | +| (instructions:u) | mean | range | count | |
| 62 | +|:----------------------------------:|:-----:|:--------------:|:-----:| |
| 63 | +| Regressions ❌ <br /> (primary) | 0.4% | [0.1%, 0.9%] | 87 | |
| 64 | +| Regressions ❌ <br /> (secondary) | 0.4% | [0.1%, 1.4%] | 31 | |
| 65 | +| Improvements ✅ <br /> (primary) | - | - | 0 | |
| 66 | +| Improvements ✅ <br /> (secondary) | -1.7% | [-1.9%, -1.6%] | 6 | |
| 67 | +| All ❌✅ (primary) | 0.4% | [0.1%, 0.9%] | 87 | |
| 68 | + |
| 69 | +Root-caused and discussed here: |
| 70 | +https://github.com/rust-lang/rust/pull/133607#issuecomment-2524194699, some |
| 71 | +optimizations expected to reduce the impact. |
| 72 | + |
| 73 | +Implementation of `fmt::FormattingOptions` [#118159](https://github.com/rust-lang/rust/pull/118159) [(Comparison Link)](https://perf.rust-lang.org/compare.html?start=8dc83770f748c6cd16b342889ca2240397c19534&end=75716b45105e443199ce9800c7009ddfd6d2be53&stat=instructions:u) |
| 74 | + |
| 75 | +| (instructions:u) | mean | range | count | |
| 76 | +|:----------------------------------:|:-----:|:--------------:|:-----:| |
| 77 | +| Regressions ❌ <br /> (primary) | 0.3% | [0.2%, 0.4%] | 2 | |
| 78 | +| Regressions ❌ <br /> (secondary) | 0.3% | [0.3%, 0.3%] | 1 | |
| 79 | +| Improvements ✅ <br /> (primary) | -0.4% | [-0.4%, -0.4%] | 1 | |
| 80 | +| Improvements ✅ <br /> (secondary) | - | - | 0 | |
| 81 | +| All ❌✅ (primary) | 0.1% | [-0.4%, 0.4%] | 3 | |
| 82 | + |
| 83 | +A few regressions in primary benchmarks, but not worth follow-up given the |
| 84 | +small magnitude, small number of affected builds, lack of clera `cycles` |
| 85 | +impact, etc. |
| 86 | + |
| 87 | +Rollup of 7 pull requests [#133978](https://github.com/rust-lang/rust/pull/133978) [(Comparison Link)](https://perf.rust-lang.org/compare.html?start=cdb89d6b15056a5cfa8932231360ae358b08983f&end=9c707a8b769523bb6768bf58e74fa2c39cc24844&stat=instructions:u) |
| 88 | + |
| 89 | +| (instructions:u) | mean | range | count | |
| 90 | +|:----------------------------------:|:-----:|:--------------:|:-----:| |
| 91 | +| Regressions ❌ <br /> (primary) | 0.3% | [0.3%, 0.3%] | 1 | |
| 92 | +| Regressions ❌ <br /> (secondary) | 0.3% | [0.2%, 0.3%] | 9 | |
| 93 | +| Improvements ✅ <br /> (primary) | - | - | 0 | |
| 94 | +| Improvements ✅ <br /> (secondary) | -0.2% | [-0.3%, -0.1%] | 2 | |
| 95 | +| All ❌✅ (primary) | 0.3% | [0.3%, 0.3%] | 1 | |
| 96 | + |
| 97 | +Expected regression in doc builds due to additional trait implementations in the standard library. |
| 98 | + |
| 99 | +Rollup of 7 pull requests [#134033](https://github.com/rust-lang/rust/pull/134033) [(Comparison Link)](https://perf.rust-lang.org/compare.html?start=f415c07494b98e4559e4b13a9c5f867b0e6b2444&end=f33a8c6426074b7ce8d08740e9805fdca96ee150&stat=instructions:u) |
| 100 | + |
| 101 | +| (instructions:u) | mean | range | count | |
| 102 | +|:----------------------------------:|:-----:|:--------------:|:-----:| |
| 103 | +| Regressions ❌ <br /> (primary) | 0.3% | [0.2%, 0.3%] | 6 | |
| 104 | +| Regressions ❌ <br /> (secondary) | 0.3% | [0.2%, 0.5%] | 6 | |
| 105 | +| Improvements ✅ <br /> (primary) | - | - | 0 | |
| 106 | +| Improvements ✅ <br /> (secondary) | -1.3% | [-2.2%, -0.3%] | 2 | |
| 107 | +| All ❌✅ (primary) | 0.3% | [0.2%, 0.3%] | 6 | |
| 108 | + |
| 109 | +Single benchmark regression, limited to incremental scenarios. Seems plausible |
| 110 | +this is due to #133992, which obviously does more (necessary for correctness) |
| 111 | +work. |
| 112 | + |
| 113 | +Introduce `MixedBitSet` [#133891](https://github.com/rust-lang/rust/pull/133891) [(Comparison Link)](https://perf.rust-lang.org/compare.html?start=1b3fb316751227d30b1523ed0e3f00d83956d4d0&end=f6cb952dc115fd1311b02b694933e31d8dc8b002&stat=instructions:u) |
| 114 | + |
| 115 | +| (instructions:u) | mean | range | count | |
| 116 | +|:----------------------------------:|:-----:|:--------------:|:-----:| |
| 117 | +| Regressions ❌ <br /> (primary) | - | - | 0 | |
| 118 | +| Regressions ❌ <br /> (secondary) | 0.6% | [0.2%, 1.0%] | 8 | |
| 119 | +| Improvements ✅ <br /> (primary) | -0.6% | [-1.3%, -0.2%] | 67 | |
| 120 | +| Improvements ✅ <br /> (secondary) | -0.7% | [-2.0%, -0.2%] | 28 | |
| 121 | +| All ❌✅ (primary) | -0.6% | [-1.3%, -0.2%] | 67 | |
| 122 | + |
| 123 | +Expected changes, primarily an improvement rather than a regression. Overall a positive change. |
0 commit comments