Change default to disable pinning of scheduler threads to CPU cores #3024
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Prior to this commit, if a random user happened to be running
multiple pony applications that are CPU intensive, they would run
into unnecessary CPU contention due to CPU pinning (at least on
Linux) due to the first few cores being the ones used by all the
applications even if the system may have more cores available. This
was particularly troublesome because users may not even be aware
that the application they're running is a pony application.
This commit changes the default to not pin scheduler threads to CPU
cores. It also removes the
--ponynopin
CLI argument and replacesit with the
--ponypin
CLI argument to leave the control forpinning as an option for advanced users without requiring all users
of pony applications to understand pinning and how to disable it.
Resolves #3023