|
| 1 | +# 2024-08-29 Triage Log |
| 2 | + |
| 3 | +Not a bad week. More improvements than regressions. |
| 4 | + |
| 5 | +Triage done by **@pnkfelix**. |
| 6 | +Revision range: [4fe1e2bd..acb4e8b6](https://perf.rust-lang.org/?start=4fe1e2bd5bf5a6f1cb245f161a5e9d315766f103&end=acb4e8b6251f1d8da36f08e7a70fa23fc581839e&absolute=false&stat=instructions%3Au) |
| 7 | + |
| 8 | +**Summary**: |
| 9 | + |
| 10 | +| (instructions:u) | mean | range | count | |
| 11 | +|:----------------------------------:|:-----:|:---------------:|:-----:| |
| 12 | +| Regressions ❌ <br /> (primary) | 0.5% | [0.2%, 2.3%] | 25 | |
| 13 | +| Regressions ❌ <br /> (secondary) | 1.1% | [0.1%, 1.9%] | 16 | |
| 14 | +| Improvements ✅ <br /> (primary) | -1.4% | [-10.4%, -0.2%] | 54 | |
| 15 | +| Improvements ✅ <br /> (secondary) | -2.6% | [-8.1%, -0.3%] | 56 | |
| 16 | +| All ❌✅ (primary) | -0.8% | [-10.4%, 2.3%] | 79 | |
| 17 | + |
| 18 | + |
| 19 | +5 Regressions, 3 Improvements, 3 Mixed; 5 of them in rollups |
| 20 | +44 artifact comparisons made in total |
| 21 | + |
| 22 | +#### Regressions |
| 23 | + |
| 24 | +Update stdarch submodule [#128866](https://github.com/rust-lang/rust/pull/128866) [(Comparison Link)](https://perf.rust-lang.org/compare.html?start=4d7c095832494257a9f57e13fd151a9d4f5c6851&end=59a74db37df8628f778faf75faa41958bb07a42a&stat=instructions:u) |
| 25 | + |
| 26 | +| (instructions:u) | mean | range | count | |
| 27 | +|:----------------------------------:|:----:|:------------:|:-----:| |
| 28 | +| Regressions ❌ <br /> (primary) | 0.3% | [0.2%, 0.5%] | 2 | |
| 29 | +| Regressions ❌ <br /> (secondary) | 0.2% | [0.1%, 0.7%] | 14 | |
| 30 | +| Improvements ✅ <br /> (primary) | - | - | 0 | |
| 31 | +| Improvements ✅ <br /> (secondary) | - | - | 0 | |
| 32 | +| All ❌✅ (primary) | 0.3% | [0.2%, 0.5%] | 2 | |
| 33 | + |
| 34 | +* primary regressions are to cratelift-codegen llvm-opt-full and helloworld llvm-doc-full |
| 35 | +* from the graphs, the cranelift regression looks like a blip, and the helloworld regression seems tiny compared to other changes in its history -- I infer the auto-computed significance threshold is quite low here, probably because historically the build time for helloworld is very stable? |
| 36 | +* In any case, doesn't seem worth investigating. Marking as triaged. |
| 37 | + |
| 38 | +Rollup of 9 pull requests [#129365](https://github.com/rust-lang/rust/pull/129365) [(Comparison Link)](https://perf.rust-lang.org/compare.html?start=a32d4a0e822a29a6682e08b75a8df4c29c7fa9f1&end=739b1fdb158a3216d1b592d0d79d77d256f59815&stat=instructions:u) |
| 39 | + |
| 40 | +| (instructions:u) | mean | range | count | |
| 41 | +|:----------------------------------:|:----:|:------------:|:-----:| |
| 42 | +| Regressions ❌ <br /> (primary) | 0.3% | [0.2%, 0.4%] | 15 | |
| 43 | +| Regressions ❌ <br /> (secondary) | - | - | 0 | |
| 44 | +| Improvements ✅ <br /> (primary) | - | - | 0 | |
| 45 | +| Improvements ✅ <br /> (secondary) | - | - | 0 | |
| 46 | +| All ❌✅ (primary) | 0.3% | [0.2%, 0.4%] | 15 | |
| 47 | + |
| 48 | +* primary regressions are solely to various incr-patched scenarios |
| 49 | +* confirmed that PR #127279 is root cause |
| 50 | +* note that PR #127279 is addressing an issue in incr-comp; it might be expected that it would cause some incr-comp benchmarks to be impacted. |
| 51 | +* left some comments and marked as triaged. |
| 52 | + |
| 53 | +Rollup of 9 pull requests [#129521](https://github.com/rust-lang/rust/pull/129521) [(Comparison Link)](https://perf.rust-lang.org/compare.html?start=697d9530d78aeba31458cadfc338adb2aea90bee&end=717aec0f8eebdc5eb51756e5129dde15e8b25710&stat=instructions:u) |
| 54 | + |
| 55 | +| (instructions:u) | mean | range | count | |
| 56 | +|:----------------------------------:|:----:|:------------:|:-----:| |
| 57 | +| Regressions ❌ <br /> (primary) | 0.7% | [0.4%, 0.9%] | 6 | |
| 58 | +| Regressions ❌ <br /> (secondary) | - | - | 0 | |
| 59 | +| Improvements ✅ <br /> (primary) | - | - | 0 | |
| 60 | +| Improvements ✅ <br /> (secondary) | - | - | 0 | |
| 61 | +| All ❌✅ (primary) | 0.7% | [0.4%, 0.9%] | 6 | |
| 62 | + |
| 63 | +* primary regressions are solely to various incremental scenarios for the bitmaps crate |
| 64 | +* PR #129513 and PR #129546 seem to have recovered much of the losses here... but after review, they are probably just masking the loss introduced by PR #129521 |
| 65 | +* opened [discussion in zulip](https://rust-lang.zulipchat.com/#narrow/stream/247081-t-compiler.2Fperformance/topic/numeric.20precision.20in.20rustc-perf.20detailed.20results/near/466074054) about how to actually dig more deeply into regressions like this. |
| 66 | +* nothing here seems like it should have impacted incr-comp, and this regression seems minor enough that it does not warrant deeper investigation |
| 67 | +* marking as triaged |
| 68 | + |
| 69 | +Rollup of 9 pull requests [#129632](https://github.com/rust-lang/rust/pull/129632) [(Comparison Link)](https://perf.rust-lang.org/compare.html?start=515395af0efdbdd657ff08a1f6d28e553856654f&end=bf662eb80838008acabc307dd64d84935ce3a20d&stat=instructions:u) |
| 70 | + |
| 71 | +| (instructions:u) | mean | range | count | |
| 72 | +|:----------------------------------:|:----:|:------------:|:-----:| |
| 73 | +| Regressions ❌ <br /> (primary) | 1.4% | [0.6%, 2.3%] | 2 | |
| 74 | +| Regressions ❌ <br /> (secondary) | - | - | 0 | |
| 75 | +| Improvements ✅ <br /> (primary) | - | - | 0 | |
| 76 | +| Improvements ✅ <br /> (secondary) | - | - | 0 | |
| 77 | +| All ❌✅ (primary) | 1.4% | [0.6%, 2.3%] | 2 | |
| 78 | + |
| 79 | +* primary doc-full regressions to typenum and stm32f4 |
| 80 | +* the regression for typenum's walltime is flagged as significant as well. |
| 81 | +* the self-profile results for typenum imply that we are spending more time in create_renderer |
| 82 | +* enqueued a rust-timer run against PR #192560 which is the most obvious candidate as a rustdoc change |
| 83 | + |
| 84 | +Implement a first version of RFC 3525: struct target features [#127537](https://github.com/rust-lang/rust/pull/127537) [(Comparison Link)](https://perf.rust-lang.org/compare.html?start=100fde5246bf56f22fb5cc85374dd841296fce0e&end=acb4e8b6251f1d8da36f08e7a70fa23fc581839e&stat=instructions:u) |
| 85 | + |
| 86 | +| (instructions:u) | mean | range | count | |
| 87 | +|:----------------------------------:|:----:|:------------:|:-----:| |
| 88 | +| Regressions ❌ <br /> (primary) | 0.4% | [0.2%, 1.0%] | 72 | |
| 89 | +| Regressions ❌ <br /> (secondary) | 0.7% | [0.2%, 2.2%] | 19 | |
| 90 | +| Improvements ✅ <br /> (primary) | - | - | 0 | |
| 91 | +| Improvements ✅ <br /> (secondary) | - | - | 0 | |
| 92 | +| All ❌✅ (primary) | 0.4% | [0.2%, 1.0%] | 72 | |
| 93 | + |
| 94 | +* this is being actively investigated by the PR author after getting feedback from @nnethercote |
| 95 | +* not marking as triaged |
| 96 | + |
| 97 | +#### Improvements |
| 98 | + |
| 99 | +Rollup of 9 pull requests [#129331](https://github.com/rust-lang/rust/pull/129331) [(Comparison Link)](https://perf.rust-lang.org/compare.html?start=5aea14073eee9e403c3bb857490cd6aa4a395531&end=4d7c095832494257a9f57e13fd151a9d4f5c6851&stat=instructions:u) |
| 100 | + |
| 101 | +| (instructions:u) | mean | range | count | |
| 102 | +|:----------------------------------:|:-----:|:---------------:|:-----:| |
| 103 | +| Regressions ❌ <br /> (primary) | - | - | 0 | |
| 104 | +| Regressions ❌ <br /> (secondary) | - | - | 0 | |
| 105 | +| Improvements ✅ <br /> (primary) | -3.2% | [-10.3%, -0.5%] | 19 | |
| 106 | +| Improvements ✅ <br /> (secondary) | -5.0% | [-7.4%, -1.4%] | 21 | |
| 107 | +| All ❌✅ (primary) | -3.2% | [-10.3%, -0.5%] | 19 | |
| 108 | + |
| 109 | + |
| 110 | +Do not call source_span when not tracking dependencies. [#129513](https://github.com/rust-lang/rust/pull/129513) [(Comparison Link)](https://perf.rust-lang.org/compare.html?start=600edc948ab5de7a92538bcc2f49cb8d47925e2d&end=ab869e094a907cc5d19b4080f22eccaf347f1f95&stat=instructions:u) |
| 111 | + |
| 112 | +| (instructions:u) | mean | range | count | |
| 113 | +|:----------------------------------:|:-----:|:--------------:|:-----:| |
| 114 | +| Regressions ❌ <br /> (primary) | - | - | 0 | |
| 115 | +| Regressions ❌ <br /> (secondary) | - | - | 0 | |
| 116 | +| Improvements ✅ <br /> (primary) | -0.3% | [-0.4%, -0.2%] | 20 | |
| 117 | +| Improvements ✅ <br /> (secondary) | -0.2% | [-0.2%, -0.2%] | 3 | |
| 118 | +| All ❌✅ (primary) | -0.3% | [-0.4%, -0.2%] | 20 | |
| 119 | + |
| 120 | + |
| 121 | +Get rid of `predicates_defined_on` [#129546](https://github.com/rust-lang/rust/pull/129546) [(Comparison Link)](https://perf.rust-lang.org/compare.html?start=d9a2cc4daee38c63b2f69710ed61d40acc32b709&end=748c54848dc2964b7e133f945cabe5bc64079947&stat=instructions:u) |
| 122 | + |
| 123 | +| (instructions:u) | mean | range | count | |
| 124 | +|:----------------------------------:|:-----:|:--------------:|:-----:| |
| 125 | +| Regressions ❌ <br /> (primary) | - | - | 0 | |
| 126 | +| Regressions ❌ <br /> (secondary) | 3.2% | [3.2%, 3.2%] | 1 | |
| 127 | +| Improvements ✅ <br /> (primary) | -0.4% | [-1.3%, -0.2%] | 108 | |
| 128 | +| Improvements ✅ <br /> (secondary) | -0.7% | [-2.0%, -0.1%] | 68 | |
| 129 | +| All ❌✅ (primary) | -0.4% | [-1.3%, -0.2%] | 108 | |
| 130 | + |
| 131 | + |
| 132 | +#### Mixed |
| 133 | + |
| 134 | +Rollup of 6 pull requests [#129275](https://github.com/rust-lang/rust/pull/129275) [(Comparison Link)](https://perf.rust-lang.org/compare.html?start=5601d14249818d952da612fec481b7af3ed03a39&end=636d7ff91b9847d6d43c7bbe023568828f6e3246&stat=instructions:u) |
| 135 | + |
| 136 | +| (instructions:u) | mean | range | count | |
| 137 | +|:----------------------------------:|:-----:|:--------------:|:-----:| |
| 138 | +| Regressions ❌ <br /> (primary) | 0.2% | [0.2%, 0.2%] | 1 | |
| 139 | +| Regressions ❌ <br /> (secondary) | 0.2% | [0.2%, 0.2%] | 8 | |
| 140 | +| Improvements ✅ <br /> (primary) | - | - | 0 | |
| 141 | +| Improvements ✅ <br /> (secondary) | -1.0% | [-1.0%, -1.0%] | 1 | |
| 142 | +| All ❌✅ (primary) | 0.2% | [0.2%, 0.2%] | 1 | |
| 143 | + |
| 144 | +* sole primary regression is to helloworld doc-full. |
| 145 | +* marked as triaged. |
| 146 | + |
| 147 | +Don't generate functions with the `rustc_intrinsic_must_be_overridden` attribute [#129239](https://github.com/rust-lang/rust/pull/129239) [(Comparison Link)](https://perf.rust-lang.org/compare.html?start=a971212545766fdfe0dd68e5d968133f79944a19&end=4d5b3b196284aded6ae99d12bcf149ffdc8ef379&stat=instructions:u) |
| 148 | + |
| 149 | +| (instructions:u) | mean | range | count | |
| 150 | +|:----------------------------------:|:-----:|:--------------:|:-----:| |
| 151 | +| Regressions ❌ <br /> (primary) | 0.2% | [0.2%, 0.2%] | 1 | |
| 152 | +| Regressions ❌ <br /> (secondary) | - | - | 0 | |
| 153 | +| Improvements ✅ <br /> (primary) | -0.3% | [-0.3%, -0.2%] | 2 | |
| 154 | +| Improvements ✅ <br /> (secondary) | -1.3% | [-2.2%, -0.6%] | 6 | |
| 155 | +| All ❌✅ (primary) | -0.1% | [-0.3%, 0.2%] | 3 | |
| 156 | + |
| 157 | +* sole primary regression is to html5ever opt-full |
| 158 | +* from inspecting the PR, its hard to imagine doing this in a better way, and Isuspect the reported regression is noise. |
| 159 | +* marked as triaged |
| 160 | + |
| 161 | +Add a precondition check for Layout::from_size_align_unchecked [#126556](https://github.com/rust-lang/rust/pull/126556) [(Comparison Link)](https://perf.rust-lang.org/compare.html?start=59a74db37df8628f778faf75faa41958bb07a42a&end=982c6f8721416431ec62bb0b9105c0578a9fc603&stat=instructions:u) |
| 162 | + |
| 163 | +| (instructions:u) | mean | range | count | |
| 164 | +|:----------------------------------:|:-----:|:--------------:|:-----:| |
| 165 | +| Regressions ❌ <br /> (primary) | - | - | 0 | |
| 166 | +| Regressions ❌ <br /> (secondary) | 1.3% | [1.1%, 1.5%] | 3 | |
| 167 | +| Improvements ✅ <br /> (primary) | -0.3% | [-0.5%, -0.2%] | 9 | |
| 168 | +| Improvements ✅ <br /> (secondary) | - | - | 0 | |
| 169 | +| All ❌✅ (primary) | -0.3% | [-0.5%, -0.2%] | 9 | |
| 170 | + |
| 171 | + |
| 172 | +* this PR went through significant microoptimization during develoment and review |
| 173 | +* also, already marked as triaged |
0 commit comments