Uh oh!
There was an error while loading. Please reload this page.
Use sharded maps for interning - #61779
Conversation
bors
commented
Jun 12, 2019
☔ The latest upstream changes (presumably #61722) made this pull request unmergeable. Please resolve the merge conflicts. |
eddyb
commented
Jun 12, 2019
LGTM, modulo the concurrent data structure, which I don't know who should be reviewing that (@gankro?) I should mention that my uncertainties around "parallel rustc" in the past were mostly around using locks instead of concurrent data structures, and this is the kind of approach I was hoping to see. I'm now excited about being able to turn on "parallel rustc" by default this year! cc @rust-lang/compiler |
Uh oh!
There was an error while loading. Please reload this page.
Gankra
left a comment
There was a problem hiding this comment.
just minor style nits on the map, it's not exactly subtle or interesting, afaict (literally just an array of Mutex<Map>s where one is "randomly" selected for each value).
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
There was a problem hiding this comment.
Absent intent to actually use this type as a map, you might as well just make this ShardedHashSet?
There was a problem hiding this comment.
It doesn't have set operations, so I'd find that misleading.
There was a problem hiding this comment.
Worth putting a comment here explaining that we can't use the map's hasher because we need the hash to find the map?
Also you could arguably do something silly like make a HashMap::default here just so this code is easier to change but... meh?
There was a problem hiding this comment.
The hash map's hasher is never used, so there isn't really a reason to access it.
Uh oh!
There was an error while loading. Please reload this page.
There was a problem hiding this comment.
it's a bit off to call this v when it's a key (same for other function)
There was a problem hiding this comment.
It's also the interned value we return =P
dbefa63 to
6a88dbeComparebors
commented
Jun 14, 2019
☔ The latest upstream changes (presumably #61817) made this pull request unmergeable. Please resolve the merge conflicts. |
bors
commented
Jun 18, 2019
☔ The latest upstream changes (presumably #61891) made this pull request unmergeable. Please resolve the merge conflicts. |
[WIP] Make dep node indices persistent between sessions This makes marking dep nodes green faster (and lock free in the case with no diagnostics). This change is split out from #60035. Unlike #60035 this makes loading the dep graph slower because it loads 2 copies of the dep graph, one immutable and one mutable. Based on #61845, #61779 and #61923.
Zoxc
commented
Jun 22, 2019
Is anything blocking this now? |
bors
commented
Jun 23, 2019
☔ The latest upstream changes (presumably #62069) made this pull request unmergeable. Please resolve the merge conflicts. |
Zoxc
commented
Jun 23, 2019
@bors try |
bors
commented
Jun 23, 2019
⌛ Trying commit 30239ab615197a5f7d6f388f41f952661dcbd1db with merge 62b9c2cb74e80279d8090fafc17fb5bae1fd6fab... |
bors
commented
Jun 23, 2019
☀️ Try build successful - checks-travis |
Zoxc
commented
Jun 23, 2019
@rust-timer build 62b9c2cb74e80279d8090fafc17fb5bae1fd6fab |
rust-timer
commented
Jun 23, 2019
Success: Queued 62b9c2cb74e80279d8090fafc17fb5bae1fd6fab with parent a96ba96, comparison URL. |
rust-timer
commented
Jun 23, 2019
Finished benchmarking try commit 62b9c2cb74e80279d8090fafc17fb5bae1fd6fab, comparison URL. |
oli-obk
commented
Jul 20, 2019
@bors r+ |
bors
commented
Jul 20, 2019
📌 Commit 0e73386 has been approved by |
bors
commented
Jul 20, 2019
Use sharded maps for interning Cuts down runtime from 5.5s to 3.8s for non-incremental `syntex_syntax` check builds with 16 threads / 8 cores. r? @eddyb
bors
commented
Jul 20, 2019
💥 Test timed out |
oli-obk
commented
Jul 22, 2019
@bors retry |
Use sharded maps for interning Cuts down runtime from 5.5s to 3.8s for non-incremental `syntex_syntax` check builds with 16 threads / 8 cores. r? @eddyb
bors
commented
Jul 23, 2019
Use sharded maps for interning Cuts down runtime from 5.5s to 3.8s for non-incremental `syntex_syntax` check builds with 16 threads / 8 cores. r? @eddyb
bors
commented
Jul 23, 2019
☀️ Test successful - checks-azure |
Use sharded maps for queries Based on rust-lang#61779. r? @gankro
Use sharded maps for queries Based on rust-lang#61779. r? @gankro
Use sharded maps for queries Based on rust-lang#61779. r? @gankro
Cuts down runtime from 5.5s to 3.8s for non-incremental
syntex_syntaxcheck builds with 16 threads / 8 cores.r? @eddyb