Move fast path checks to evaluate_goal_raw#158249
Conversation
|
This tests a bunch of changes together. I've done diffs locally suggesting ~5% speedup across these 7 commits. Moving fast path checks to @bors try @rust-timer queue |
This comment has been minimized.
This comment has been minimized.
Move fast path checks to `evaluate_goal_raw`
This comment has been minimized.
This comment has been minimized.
|
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.
|
Finished benchmarking commit (3f4f44d): comparison URL. Overall result: ❌✅ regressions and improvements - please read:Benchmarking means the PR may be perf-sensitive. It's automatically marked not fit for rolling up. Overriding is possible but disadvised: it risks changing compiler perf. Next, please: If you can, justify the regressions found in this try perf run in writing along with @bors rollup=never Instruction countOur most reliable metric. Used to determine the overall result above. However, even this metric can be noisy.
Max RSS (memory usage)Results (primary 0.6%, secondary 1.6%)A less reliable metric. May be of interest, but not used to determine the overall result above.
CyclesResults (secondary 3.2%)A less reliable metric. May be of interest, but not used to determine the overall result above.
Binary sizeResults (primary 0.0%, secondary 0.1%)A less reliable metric. May be of interest, but not used to determine the overall result above.
Bootstrap: 503.321s -> 505.38s (0.41%) |
| fn is_changed_var(&self, var: TyOrConstInferVar) -> bool { | ||
| match var { | ||
| TyOrConstInferVar::Ty(vid) => { | ||
| !self.try_resolve_ty_var(vid).is_err_and(|_| self.root_var(vid) == vid) |
There was a problem hiding this comment.
🤔 why are we accessing the infer var table twice here? do we also do so with the old solver?
There was a problem hiding this comment.
as in both try_resolve_ty_var and self.root_var needs to fetch the root_var
No description provided.