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

typemap: improve quality of leaf split #48925

Merged
merged 1 commit into from
Mar 8, 2023
Merged

Conversation

vtjnash
Copy link
Member

@vtjnash vtjnash commented Mar 6, 2023

Introduce another optional layer of indirection, doing lookup on first typename always, then leaftypes. This lets the intersection-iterators skip a lot of jl_isa queries later. (note, the leaftypes portion is almost never actually used, allocated, or needed though.)

I cannot really measure how much better this does due to the GC issue (#48923)

Introduce another optional layer of indirection, doing lookup on first
typename always, then leaftypes. This lets the intersection-iterators
skip a lot of jl_isa queries later.
@vtjnash vtjnash added the compiler:latency Compiler latency label Mar 6, 2023
@vtjnash
Copy link
Member Author

vtjnash commented Mar 7, 2023

@nanosoldier runbenchmarks(!"scalar", vs=":master")

@nanosoldier
Copy link
Collaborator

Your benchmark job has completed - possible performance regressions were detected. A full report can be found here.

@vtjnash vtjnash merged commit eb4b1a7 into master Mar 8, 2023
@vtjnash vtjnash deleted the jn/typemap-split-names branch March 8, 2023 02:21
vtjnash added a commit that referenced this pull request Apr 19, 2023
Certain queries were searching for Type{T} instead of T due to a
mistaken tparam setting, resulting in missing methods in lookup.

Fix #49408
Ref #48925
Xnartharax pushed a commit to Xnartharax/julia that referenced this pull request Apr 19, 2023
Introduce another optional layer of indirection, doing lookup on first
typename always, then leaftypes. This lets the intersection-iterators
skip a lot of jl_isa queries later.
vtjnash added a commit that referenced this pull request Apr 20, 2023
Certain queries were searching for Type{T} instead of T due to a
mistaken tparam setting, resulting in missing methods in lookup.

Fix #49408
Ref #48925
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
compiler:latency Compiler latency
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants