-
Notifications
You must be signed in to change notification settings - Fork 120
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
Ability to require more than 1 thread for an action #491
Comments
We're using shake to build bootable Linux images, not unlike what buildroot does. There are enough packages to build so that building individual packages with One case where it doesn't work so well is for bigger packages like Mesa: When we change Mesa's configuration, the build system will rebuild Mesa and then the packages that depend on Mesa. That rebuild of Mesa will take quite a while, because it's using only one core... So I wonder what a good API for
Obviously Another thing that sprung to my mind is that it might make sense to delay building bigger packages until one or more smaller packages are finished, to give the bigger ones some extra CPU horsepower. But maybe that's too tricky to get right... :-) |
Normally when executing an
I imagine the semantics would be to come out of the thread pool, and add a new entry that requires N threads. Initially I'd probably require the inner |
I had a look at implementing this and ran into #823 Relevant GHC issue is https://gitlab.haskell.org/ghc/ghc/-/issues/21136 |
With
unsafeExtraThread
you can acquire additional threads while running. It might be useful to have awithThreads
equivalent that allows more threads to be used by a single rule, e.g. when runningmake -j
as a subaction. See snowleopard/hadrian#289 for an example.The text was updated successfully, but these errors were encountered: