|
| 1 | +# 2025-02-10 Triage Log |
| 2 | + |
| 3 | +A relatively neutral week, with lots of real changes but most small in |
| 4 | +magnitude. Most significant change is rustdoc's move of JS/CSS minification to |
| 5 | +build time which cut doc generation times on most benchmarks fairly |
| 6 | +significantly. |
| 7 | + |
| 8 | +Triage done by **@simulacrum**. |
| 9 | +Revision range: [01e4f19c..c03c38d5](https://perf.rust-lang.org/?start=01e4f19cc8027925ffe0885a86388b700e46bfab&end=c03c38d5c2368cd2aa0e056dba060b94fc747f4e&absolute=false&stat=instructions%3Au) |
| 10 | + |
| 11 | +**Summary**: |
| 12 | + |
| 13 | +| (instructions:u) | mean | range | count | |
| 14 | +|:----------------------------------:|:-----:|:--------------:|:-----:| |
| 15 | +| Regressions ❌ <br /> (primary) | 0.5% | [0.1%, 1.2%] | 100 | |
| 16 | +| Regressions ❌ <br /> (secondary) | 0.6% | [0.1%, 7.3%] | 93 | |
| 17 | +| Improvements ✅ <br /> (primary) | -1.8% | [-5.7%, -0.2%] | 22 | |
| 18 | +| Improvements ✅ <br /> (secondary) | -2.5% | [-5.7%, -0.2%] | 36 | |
| 19 | +| All ❌✅ (primary) | 0.0% | [-5.7%, 1.2%] | 122 | |
| 20 | + |
| 21 | + |
| 22 | +3 Regressions, 5 Improvements, 1 Mixed; 2 of them in rollups |
| 23 | +32 artifact comparisons made in total |
| 24 | + |
| 25 | +#### Regressions |
| 26 | + |
| 27 | +Upgrade elsa to the newest version. [#136094](https://github.com/rust-lang/rust/pull/136094) [(Comparison Link)](https://perf.rust-lang.org/compare.html?start=07179d549659e119a0e4175629b839337c6a8c02&end=820bfffc25fee9866aa8176529091e04b8824f09&stat=instructions:u) |
| 28 | + |
| 29 | +| (instructions:u) | mean | range | count | |
| 30 | +|:----------------------------------:|:-----:|:--------------:|:-----:| |
| 31 | +| Regressions ❌ <br /> (primary) | 0.2% | [0.1%, 0.4%] | 35 | |
| 32 | +| Regressions ❌ <br /> (secondary) | 0.3% | [0.0%, 0.6%] | 13 | |
| 33 | +| Improvements ✅ <br /> (primary) | - | - | 0 | |
| 34 | +| Improvements ✅ <br /> (secondary) | -0.3% | [-0.3%, -0.3%] | 1 | |
| 35 | +| All ❌✅ (primary) | 0.2% | [0.1%, 0.4%] | 35 | |
| 36 | + |
| 37 | +See discussion |
| 38 | +[here](https://github.com/rust-lang/rust/pull/136094#issuecomment-2628827080). |
| 39 | +Some possible improvements have been identified, but starting by just getting |
| 40 | +elsa on regular updates again. |
| 41 | + |
| 42 | +Rollup of 7 pull requests [#136641](https://github.com/rust-lang/rust/pull/136641) [(Comparison Link)](https://perf.rust-lang.org/compare.html?start=79f82ad5e89aa421e2c765fea2098b23beb69b40&end=942db6782f4a28c55b0b75b38fd4394d0483390f&stat=instructions:u) |
| 43 | + |
| 44 | +| (instructions:u) | mean | range | count | |
| 45 | +|:----------------------------------:|:----:|:------------:|:-----:| |
| 46 | +| Regressions ❌ <br /> (primary) | - | - | 0 | |
| 47 | +| Regressions ❌ <br /> (secondary) | 3.1% | [0.0%, 8.0%] | 6 | |
| 48 | +| Improvements ✅ <br /> (primary) | - | - | 0 | |
| 49 | +| Improvements ✅ <br /> (secondary) | - | - | 0 | |
| 50 | +| All ❌✅ (primary) | - | - | 0 | |
| 51 | + |
| 52 | +Changes are expected, from a few contained PRs: |
| 53 | +- https://github.com/rust-lang/rust/pull/136073#issuecomment-2617093212 |
| 54 | +- https://github.com/rust-lang/rust/pull/136435#issuecomment-2629382897 |
| 55 | + |
| 56 | +Generally expected to only meaningfully affect stress tests rather than |
| 57 | +real-world code. |
| 58 | + |
| 59 | +Add amdgpu target [#134740](https://github.com/rust-lang/rust/pull/134740) [(Comparison Link)](https://perf.rust-lang.org/compare.html?start=d9a4a47b8b3dc0bdff83360cea2013200d60d49c&end=c03c38d5c2368cd2aa0e056dba060b94fc747f4e&stat=instructions:u) |
| 60 | + |
| 61 | +| (instructions:u) | mean | range | count | |
| 62 | +|:----------------------------------:|:----:|:------------:|:-----:| |
| 63 | +| Regressions ❌ <br /> (primary) | 0.7% | [0.2%, 3.8%] | 55 | |
| 64 | +| Regressions ❌ <br /> (secondary) | 0.6% | [0.2%, 1.0%] | 47 | |
| 65 | +| Improvements ✅ <br /> (primary) | - | - | 0 | |
| 66 | +| Improvements ✅ <br /> (secondary) | - | - | 0 | |
| 67 | +| All ❌✅ (primary) | 0.7% | [0.2%, 3.8%] | 55 | |
| 68 | + |
| 69 | +Regressions are mostly in LLVM, seemingly due to more logic being added to |
| 70 | +common code (e.g., pass enumeration) that runs even on non-AMDGPU targets. This |
| 71 | +is also a significant size regression (+19MB on LLVM.so) but generally these |
| 72 | +are likely unavoidable in the short term at least given the expanded target |
| 73 | +set. |
| 74 | + |
| 75 | +#### Improvements |
| 76 | + |
| 77 | +librustdoc: create a helper for separating elements of an iterator instead of implementing it multiple times [#136244](https://github.com/rust-lang/rust/pull/136244) [(Comparison Link)](https://perf.rust-lang.org/compare.html?start=e5f11af042ad099102efd572743138df60764a4e&end=8df89d1cb077cd76013d3f9f5a4e92c5b5a9280c&stat=instructions:u) |
| 78 | + |
| 79 | +| (instructions:u) | mean | range | count | |
| 80 | +|:----------------------------------:|:-----:|:--------------:|:-----:| |
| 81 | +| Regressions ❌ <br /> (primary) | - | - | 0 | |
| 82 | +| Regressions ❌ <br /> (secondary) | - | - | 0 | |
| 83 | +| Improvements ✅ <br /> (primary) | -0.7% | [-0.8%, -0.6%] | 2 | |
| 84 | +| Improvements ✅ <br /> (secondary) | - | - | 0 | |
| 85 | +| All ❌✅ (primary) | -0.7% | [-0.8%, -0.6%] | 2 | |
| 86 | + |
| 87 | + |
| 88 | +Avoid calling the layout_of query in lit_to_const [#136302](https://github.com/rust-lang/rust/pull/136302) [(Comparison Link)](https://perf.rust-lang.org/compare.html?start=820bfffc25fee9866aa8176529091e04b8824f09&end=d4bdd1ed551fed0c951eb47b4be2c79d7a02d181&stat=instructions:u) |
| 89 | + |
| 90 | +| (instructions:u) | mean | range | count | |
| 91 | +|:----------------------------------:|:-----:|:--------------:|:-----:| |
| 92 | +| Regressions ❌ <br /> (primary) | - | - | 0 | |
| 93 | +| Regressions ❌ <br /> (secondary) | - | - | 0 | |
| 94 | +| Improvements ✅ <br /> (primary) | - | - | 0 | |
| 95 | +| Improvements ✅ <br /> (secondary) | -0.5% | [-0.6%, -0.3%] | 14 | |
| 96 | +| All ❌✅ (primary) | - | - | 0 | |
| 97 | + |
| 98 | +rustdoc: run css and html minifier at build instead of runtime [#136253](https://github.com/rust-lang/rust/pull/136253) [(Comparison Link)](https://perf.rust-lang.org/compare.html?start=d4bdd1ed551fed0c951eb47b4be2c79d7a02d181&end=a9730c3b5f84a001c052c60c97ed0765e9ceac04&stat=instructions:u) |
| 99 | + |
| 100 | +| (instructions:u) | mean | range | count | |
| 101 | +|:----------------------------------:|:-----:|:--------------:|:-----:| |
| 102 | +| Regressions ❌ <br /> (primary) | - | - | 0 | |
| 103 | +| Regressions ❌ <br /> (secondary) | - | - | 0 | |
| 104 | +| Improvements ✅ <br /> (primary) | -1.6% | [-5.5%, -0.2%] | 21 | |
| 105 | +| Improvements ✅ <br /> (secondary) | -3.7% | [-5.5%, -0.7%] | 22 | |
| 106 | +| All ❌✅ (primary) | -1.6% | [-5.5%, -0.2%] | 21 | |
| 107 | + |
| 108 | +rustdoc: use ThinVec for generic arg parts [#136265](https://github.com/rust-lang/rust/pull/136265) [(Comparison Link)](https://perf.rust-lang.org/compare.html?start=6741521dc478182392806e816e919a36be5a2ba2&end=30865107cb8942ab8eaf9baf8d3aa2a6dec2643f&stat=instructions:u) |
| 109 | + |
| 110 | +| (instructions:u) | mean | range | count | |
| 111 | +|:----------------------------------:|:-----:|:--------------:|:-----:| |
| 112 | +| Regressions ❌ <br /> (primary) | - | - | 0 | |
| 113 | +| Regressions ❌ <br /> (secondary) | - | - | 0 | |
| 114 | +| Improvements ✅ <br /> (primary) | -0.3% | [-0.5%, -0.2%] | 20 | |
| 115 | +| Improvements ✅ <br /> (secondary) | -0.4% | [-0.6%, -0.1%] | 18 | |
| 116 | +| All ❌✅ (primary) | -0.3% | [-0.5%, -0.2%] | 20 | |
| 117 | + |
| 118 | + |
| 119 | +implement `eat_until` leveraging memchr in lexer [#136585](https://github.com/rust-lang/rust/pull/136585) [(Comparison Link)](https://perf.rust-lang.org/compare.html?start=2f92f050e83bf3312ce4ba73c31fe843ad3cbc60&end=79f82ad5e89aa421e2c765fea2098b23beb69b40&stat=instructions:u) |
| 120 | + |
| 121 | +| (instructions:u) | mean | range | count | |
| 122 | +|:----------------------------------:|:-----:|:--------------:|:-----:| |
| 123 | +| Regressions ❌ <br /> (primary) | - | - | 0 | |
| 124 | +| Regressions ❌ <br /> (secondary) | - | - | 0 | |
| 125 | +| Improvements ✅ <br /> (primary) | -0.3% | [-0.4%, -0.1%] | 24 | |
| 126 | +| Improvements ✅ <br /> (secondary) | -1.6% | [-1.6%, -1.6%] | 1 | |
| 127 | +| All ❌✅ (primary) | -0.3% | [-0.4%, -0.1%] | 24 | |
| 128 | + |
| 129 | +#### Mixed |
| 130 | + |
| 131 | +Rollup of 7 pull requests [#136549](https://github.com/rust-lang/rust/pull/136549) [(Comparison Link)](https://perf.rust-lang.org/compare.html?start=3f33b30e19b7597a3acbca19e46d9e308865a0fe&end=bef3c3b01f690de16738b1c9f36470fbfc6ac623&stat=instructions:u) |
| 132 | + |
| 133 | +| (instructions:u) | mean | range | count | |
| 134 | +|:----------------------------------:|:-----:|:--------------:|:-----:| |
| 135 | +| Regressions ❌ <br /> (primary) | - | - | 0 | |
| 136 | +| Regressions ❌ <br /> (secondary) | 0.3% | [0.2%, 0.3%] | 7 | |
| 137 | +| Improvements ✅ <br /> (primary) | -0.3% | [-0.3%, -0.2%] | 5 | |
| 138 | +| Improvements ✅ <br /> (secondary) | -0.6% | [-0.8%, -0.3%] | 5 | |
| 139 | +| All ❌✅ (primary) | -0.3% | [-0.3%, -0.2%] | 5 | |
| 140 | + |
| 141 | +Unclear as to exact cause, but not going to dig in further given small number |
| 142 | +of benchmarks affected (only primary is `libc`, and it improved). |
0 commit comments