Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

resolve: Improve performance #33064

Merged
merged 1 commit into from Apr 18, 2016

Conversation

Projects
None yet
5 participants
@jseyfried
Copy link
Contributor

jseyfried commented Apr 18, 2016

This fixes #33061 by speeding up searchs through all traits in scope, a bottleneck in resolve.

According to my measurements, this PR improves resolution performance by a factor of 3.4x on librustc, which almost completely reverses the 3.75x performance regression reported in #33061.

r? @eddyb

@jseyfried jseyfried force-pushed the jseyfried:improve_resolve_performance branch from a9660f6 to 6ae8027 Apr 18, 2016

@jseyfried

This comment has been minimized.

Copy link
Contributor Author

jseyfried commented Apr 18, 2016

@eddyb

This comment has been minimized.

Copy link
Member

eddyb commented Apr 18, 2016

@bors r+

@bors

This comment has been minimized.

Copy link
Contributor

bors commented Apr 18, 2016

📌 Commit 6ae8027 has been approved by eddyb

@bors

This comment has been minimized.

Copy link
Contributor

bors commented Apr 18, 2016

⌛️ Testing commit 6ae8027 with merge 63760ac...

bors added a commit that referenced this pull request Apr 18, 2016

Auto merge of #33064 - jseyfried:improve_resolve_performance, r=eddyb
resolve: Improve performance

This fixes #33061 by speeding up searchs through all traits in scope, a bottleneck in `resolve`.

According to my measurements, this PR improves resolution performance by a factor of 3.4x on `librustc`, which almost completely reverses the 3.75x performance regression reported in #33061.

r? @eddyb
@jseyfried

This comment has been minimized.

Copy link
Contributor Author

jseyfried commented Apr 18, 2016

@eddyb thanks! The regression is currently in beta -- do you think we should beta-nominate this?

@bors bors merged commit 6ae8027 into rust-lang:master Apr 18, 2016

2 checks passed

continuous-integration/travis-ci/pr The Travis CI build passed
Details
homu Test successful
Details
@nikomatsakis

This comment has been minimized.

Copy link
Contributor

nikomatsakis commented Apr 21, 2016

Ordinarily we wouldn't backport a pure performance change, but approved for beta because:

  • this is a small and simple patch;
  • it's a perf regression, no need to give up ground.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
You can’t perform that action at this time.