I was looking at self check benchmark results, and I noticed that there were some potential recent performance regressions. Here is a summary:
#18845 looks like noise and probably isn't a regression.
It would be good to see if we can reduce the impact of these.
I'm wondering if we could only perform the additional passes introduced in #18433 only when the first pass actually generates an error that we want to fix. If that's the case, we'd discard the errors and apply the new logic.
(Note that the December regression is due to switching from Python 3.8 to 3.13, which is less efficient for our workload.)
cc @tyralla and @ilevkivskyi
I was looking at self check benchmark results, and I noticed that there were some potential recent performance regressions. Here is a summary:
unreachableandredundant-exprwarnings in loops. #18433 (8.7% regression)#18845 looks like noise and probably isn't a regression.
It would be good to see if we can reduce the impact of these.
I'm wondering if we could only perform the additional passes introduced in #18433 only when the first pass actually generates an error that we want to fix. If that's the case, we'd discard the errors and apply the new logic.
(Note that the December regression is due to switching from Python 3.8 to 3.13, which is less efficient for our workload.)
cc @tyralla and @ilevkivskyi