-
Notifications
You must be signed in to change notification settings - Fork 160
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
Dynamic Number of Jobs Limit #1074
Comments
This could be really hard to do! I see a few options:
|
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Prerequisites
What is your proposal?
bulk -J performs a bulk build using N jails. A thought I had today was that with a machine with 4 cores, running -J 4 or higher can overwhelm the machine, especially when not using DISABLE_MAKE_JOBS. It would be nice to be able to define a maximum load average which when exceeded, after jobs have completed, no new jails are initiated to build the next package in the queue until the load average per CPU is below a predefined level.
What is the existing behavior, if any?
A machine can become overwhelmed when MAKE_JOBS is active and -J >= cores/threads.
What is the motivation / use case for the change?
High load averages.
Did you consider any alternatives?
I did consider creating my own patch and submitting a pull request but I have other FreeBSD projects on the go that require my full attention (one in particular) at the moment.
Is this really a ports feature request?
This is purely a poudriere thing.
Example
poudriere bulk -j amd64-head -J 8::16 ...
Where, the third argument in -J is the maximum load average (one might calculate it as load average * cores or threads). Alternatively we could use a -l argument or even put a variable in poudriere.conf.
The text was updated successfully, but these errors were encountered: