[DO NOT MERGE] Experiment with micro-optimizing push_str calls#148604
[DO NOT MERGE] Experiment with micro-optimizing push_str calls#148604lolbinarycat wants to merge 1 commit intorust-lang:mainfrom
Conversation
|
@bors2 try @rust-timer queue |
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
[DO NOT MERGE] Experiment with micro-optimizing push_str calls
This comment has been minimized.
This comment has been minimized.
|
@bors try cancel |
|
Try build cancelled. Cancelled workflows: |
f04df73 to
226e775
Compare
|
@bors2 try @rust-timer queue |
This comment has been minimized.
This comment has been minimized.
[DO NOT MERGE] Experiment with micro-optimizing push_str calls
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
226e775 to
36de490
Compare
|
@bors try cancel |
|
Try build cancelled. Cancelled workflows: |
|
@bors2 try @rust-timer queue |
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
[DO NOT MERGE] Experiment with micro-optimizing push_str calls
|
Btw, you don't need to cancel the previous try build when making a new one. Bors will automatically cancel the previous one. |
|
The job Click to see the possible cause of the failure (guessed by this bot) |
This comment has been minimized.
This comment has been minimized.
|
Huh. CI failed but the try build didn't, is this another case of a check only being run in CI, or did something about bors change so that perf can continue even if there's an issue? |
|
Finished benchmarking commit (978d49e): comparison URL. Overall result: no relevant changes - no action neededBenchmarking this pull request means it may be perf-sensitive – we'll automatically label it not fit for rolling up. You can override this, but we strongly advise not to, due to possible changes in compiler perf. @bors rollup=never Instruction countThis benchmark run did not return any relevant results for this metric. Max RSS (memory usage)Results (primary -2.3%)A less reliable metric. May be of interest, but not used to determine the overall result above.
CyclesResults (secondary -5.8%)A less reliable metric. May be of interest, but not used to determine the overall result above.
Binary sizeThis benchmark run did not return any relevant results for this metric. Bootstrap: 475.185s -> 474.535s (-0.14%) |
|
It's a very slight improvement by every metric, including artifact size, surprisingly. I think I might open an ACP for |
|
The default try build just builds the compiler, and doesn't run any tests. So often it succeeds even if CI fails, it's by design. |
|
FWIW, the artifact size is noise, and the icount results are a wash. It doesn't seem to me that this has an effect. |
|
It is a struggle to get microoptimizations to show up as statistically significant, and if you batch them together it's hard to tell if one of them is just making a way bigger difference than the others. Also, what about the memory improvements? |
|
Could this benefit the current |
…r=Mark-Simulacrum alloc: specialize String::extend for slices of str Here's a small optimization via specialization that can potentially eliminate a fair few reallocations when building strings using specific patterns, unsure if this justifies the use of unsafe, but I had the code implemented from #148604, so I thought it was worth submitting to see.
…r=Mark-Simulacrum alloc: specialize String::extend for slices of str Here's a small optimization via specialization that can potentially eliminate a fair few reallocations when building strings using specific patterns, unsure if this justifies the use of unsafe, but I had the code implemented from #148604, so I thought it was worth submitting to see.
…r=Mark-Simulacrum alloc: specialize String::extend for slices of str Here's a small optimization via specialization that can potentially eliminate a fair few reallocations when building strings using specific patterns, unsure if this justifies the use of unsafe, but I had the code implemented from rust-lang/rust#148604, so I thought it was worth submitting to see.
…r=Mark-Simulacrum alloc: specialize String::extend for slices of str Here's a small optimization via specialization that can potentially eliminate a fair few reallocations when building strings using specific patterns, unsure if this justifies the use of unsafe, but I had the code implemented from rust-lang/rust#148604, so I thought it was worth submitting to see.
…r=Mark-Simulacrum alloc: specialize String::extend for slices of str Here's a small optimization via specialization that can potentially eliminate a fair few reallocations when building strings using specific patterns, unsure if this justifies the use of unsafe, but I had the code implemented from rust-lang/rust#148604, so I thought it was worth submitting to see.
…r=Mark-Simulacrum alloc: specialize String::extend for slices of str Here's a small optimization via specialization that can potentially eliminate a fair few reallocations when building strings using specific patterns, unsure if this justifies the use of unsafe, but I had the code implemented from rust-lang/rust#148604, so I thought it was worth submitting to see.
…r=Mark-Simulacrum alloc: specialize String::extend for slices of str Here's a small optimization via specialization that can potentially eliminate a fair few reallocations when building strings using specific patterns, unsure if this justifies the use of unsafe, but I had the code implemented from rust-lang/rust#148604, so I thought it was worth submitting to see.
|
Now that #149694 has made its way to beta, it would be possible to revive this using |
No description provided.