Uh oh!
There was an error while loading. Please reload this page.
Only do sanity check with debug assertions on - #51658
Conversation
nnethercote
commented
Jun 20, 2018
The change looks fine to me, though I don't have review privileges so you should probably ask someone else as well. I don't know why the instruction count would change (particularly by such a large amount) if this code isn't executed, as you say. But if it helps, might as well land it! |
Mark-Simulacrum
commented
Jun 20, 2018
Presumably r? @nikomatsakis or @eddyb |
nnethercote
commented
Jun 21, 2018
How exactly did you get this measurement? I just did a local benchmarking run of |
nnethercote
commented
Jun 21, 2018
oli-obk
commented
Jun 21, 2018
Yes the regression is very likely elsewhere. I just wanted to get this fix out of the way. I came to the conclusion that this code could be relevant by looking at what code transitively calls this function, and it's a lot. Weird that you are not seeing the change. I ran it multiple times to ensure that the value doesn't change. Note that I used stage 1 because I didn't want to wait for stage 2. But as I said this doesn't improve perf in non-check cases, so I'm not sure what's going on |
nnethercote
commented
Jun 21, 2018
What exactly did you run? Are you using the rustc-perf harness? |
yes I ran rustup nightly vs stage1 |
nikomatsakis
commented
Jun 21, 2018
@bors try |
bors
commented
Jun 21, 2018
⌛ Trying commit d145a9539ae0643ddc6c516c3847e62d92033e88 with merge 41d23dc3c8502ec880cb8a06f0c24e00adbf2ea0... |
nikomatsakis
commented
Jun 21, 2018
The change seems ... fine, though I might rather keep an |
Mark-Simulacrum
commented
Jun 21, 2018
@bors retry |
bors
commented
Jun 21, 2018
⌛ Trying commit d145a9539ae0643ddc6c516c3847e62d92033e88 with merge f62ad42dd18ad2aeea92affe2e927ba808410683... |
kennytm
commented
Jun 21, 2018
@bors r- try- retry The try build is complete but we've restarted bors and got the states confused. |
kennytm
commented
Jun 24, 2018
@Mark-Simulacrum perf is requested |
Mark-Simulacrum
commented
Jun 24, 2018
Perf queued. |
nikomatsakis
commented
Jun 25, 2018
@Mark-Simulacrum perf available now? |
Mark-Simulacrum
commented
Jun 25, 2018
nikomatsakis
commented
Jun 25, 2018
OK, seems like a wash by and large. |
nikomatsakis
commented
Jun 25, 2018
@oli-obk maybe just remove the weird |
oli-obk
commented
Jun 26, 2018
Done. |
nikomatsakis
commented
Jun 26, 2018
@bors r+ |
bors
commented
Jun 26, 2018
📌 Commit a693c92 has been approved by |
oli-obk
commented
Jun 26, 2018
@bors rollup |
Only do sanity check with debug assertions on r? @nnethercote I'm slighty confused. These changes address code that the `unused-warnings` benchmark doesn't go through, yet I see a 5% improvement to nightly on the `check` run, and no improvement on the other runs. Maybe this change allows unrelated code in the same function to be better optimized?
Rollup of 7 pull requests Successful merges: - #49987 (Add str::split_ascii_whitespace.) - #50342 (Document round-off error in `.mod_euc()`-method, see issue #50179) - #51658 (Only do sanity check with debug assertions on) - #51799 (Lower case some feature gate error messages) - #51800 (Add a compiletest header for edition) - #51824 (Fix the error reference for LocalKey::try_with) - #51842 (Document that Layout::from_size_align does not allow align=0) Failed merges: r? @ghost
r? @nnethercote
I'm slighty confused. These changes address code that the
unused-warningsbenchmark doesn't go through, yet I see a 5% improvement to nightly on thecheckrun, and no improvement on the other runs.Maybe this change allows unrelated code in the same function to be better optimized?