Join GitHub today
GitHub is home to over 31 million developers working together to host and review code, manage projects, and build software together.
Sign upStore a Symbol in InternedString #46972
Conversation
rust-highfive
assigned
pnkfelix
Dec 23, 2017
This comment has been minimized.
This comment has been minimized.
|
r? @pnkfelix (rust_highfive has picked a reviewer for you, use r? to override) |
Zoxc
force-pushed the
Zoxc:internedstring-no-deref
branch
from
c758e13
to
100c61b
Dec 24, 2017
This comment has been minimized.
This comment has been minimized.
|
r? @jseyfried (I don't think we want these changes but we probably need a wider discussion) EDIT: |
rust-highfive
assigned
jseyfried
and unassigned
pnkfelix
Dec 24, 2017
This comment has been minimized.
This comment has been minimized.
|
|
Zoxc
force-pushed the
Zoxc:internedstring-no-deref
branch
from
100c61b
to
4cda813
Dec 25, 2017
Zoxc
changed the title
WIP: Store a Symbol in InternedString
Store a Symbol in InternedString
Dec 25, 2017
This comment has been minimized.
This comment has been minimized.
|
|
kennytm
added
the
S-waiting-on-review
label
Dec 27, 2017
Zoxc
added some commits
Dec 23, 2017
Zoxc
force-pushed the
Zoxc:internedstring-no-deref
branch
from
4cda813
to
c3ab779
Dec 28, 2017
This comment has been minimized.
This comment has been minimized.
|
@bors try |
bors
added a commit
that referenced
this pull request
Dec 28, 2017
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
|
|
This comment has been minimized.
This comment has been minimized.
|
@Mark-Simulacrum I'd like a perf run on this |
This comment has been minimized.
This comment has been minimized.
|
Perf run queued. |
This comment has been minimized.
This comment has been minimized.
|
ping @Mark-Simulacrum, do we have perf results now perchance? |
This comment has been minimized.
This comment has been minimized.
|
(Also, Note that @jseyfried has not yet weighed in on whether they want these changes.) |
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
|
review ping @jseyfried ! |
kennytm
added
the
T-compiler
label
Jan 17, 2018
This comment has been minimized.
This comment has been minimized.
|
Review ping for you @jseyfried! Also cc @rust-lang/compiler. |
This comment has been minimized.
This comment has been minimized.
|
Can somebody summarize (a) what is being done here so I don't have to read the diffs and (b) why I should care? |
This comment has been minimized.
This comment has been minimized.
|
@nikomatsakis This is reverting an API change @jseyfried (I believe) did. |
This comment has been minimized.
This comment has been minimized.
|
What's the point of So far I didn't look carefully at @Zoxc's multithreading-related PRs and mostly seen them as something quite unfortunate, but maybe necessary after all. |
This comment has been minimized.
This comment has been minimized.
It has
My branch has a interner per compilation session which is behind a lock. There is no parallelism during parsing there though, so all symbols are identical to what happens on |
This comment has been minimized.
This comment has been minimized.
|
This seems to be slowing things down quite a bit (as per the perf run above). Is this a soundness fix? Is there an alternative implementation that allows us to keep using direct string references? |
This comment has been minimized.
This comment has been minimized.
|
I believe we can just require that the interner outlives the threads that use it. |
This comment has been minimized.
This comment has been minimized.
|
@michaelwoerister I suspect the slowdown is due to the usages of @eddyb I think that spawning a thread for the interner should work. Not terribly elegant though. |
This comment has been minimized.
This comment has been minimized.
|
@Zoxc I mean you already have the threads, you just have to own the interner outside of them. |
carols10cents
added
S-waiting-on-author
and removed
S-waiting-on-review
labels
Jan 22, 2018
This comment has been minimized.
This comment has been minimized.
It seems pretty important to resolve this, no? |
This comment has been minimized.
This comment has been minimized.
|
Thanks for the PR, @Zoxc ! Since we haven't heard from you in a few weeks, I'm going to close this for now. Please feel free to reopen once you address the merge conflicts and the last round of feedback! |
Zoxc commentedDec 23, 2017
No description provided.