-
Notifications
You must be signed in to change notification settings - Fork 13.3k
Try to integrate fork of Chili parallel rutime #140206
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
base: master
Are you sure you want to change the base?
Conversation
r? @fee1-dead rustbot has assigned @fee1-dead. Use |
This comment has been minimized.
This comment has been minimized.
|
☔ The latest upstream changes (presumably #139983) made this pull request unmergeable. Please resolve the merge conflicts. |
Prototype integration is ready for benchmarks |
7 threads:
2 threads:
|
Hm, well I forgot to mention there's no jobserver integrated yet, so it's only relevant to benchmark a single rustc run, instead of a whole cargo check. Sorry for that. I would like to add this next. Also there is a constant parameter on And do not worry about doing benchmarks for me, unless you want to. I may not have time to collect benchmarks before day ends, so I just update the progress as it is. :) And thank you for your measurements! |
The benchmarks are for a single rustc run. I'm using rcb ( The |
Chili is a rust implementation of a parallel runtime with the heartbeat scheduling.Due to my bit of experience of working on rustc parallel runtime, I've tried to do a quick integration of chili into rustc to check the performance. My hacky modifications to Chili consist of:
mark_(un)blocked
methods;scoped_with_config
to mimic rayon's design;install
method to run code on the worker threads.I've also removed
parallel!
macro as I couldn't figure out how to do it without causing ambiguity error:Original runtime repo: https://github.com/dragostis/chili
Modifications to Chili to accommodate rustc: dragostis/chili@main...zetanumbers:chili:rustc
Related zulip topic: #t-compiler/parallel-rustc > use heartbeat scheduling to improve parallel frontend