[WIP] Use Joblib backend hints rather than hardcoding #11345
Closed
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.
Reference Issues/PRs
Closes #8804
See also #9486
See also joblib/joblib#602
This includes the changes from #602, since that's required for this. I wanted to get this up early, in the hopes it could be reviewed and included in the release (if possible). Currently, my changes are in 28260d9
What does this implement/fix? Explain your changes.
Uses joblib's new backend hints in every place where we currently hardcode the backend.
Currently (I think) only ForestClassifier / ForestRegressor rely on shared memory for correctness, and only in their
predict
methods. Everywhere else has been changed toprefer='threads'
.Any other comments?
Open questions:
I'm not sure whether I should write similar tests for other backends.
non-default backend should indicate that in the
n_jobs
parameterdescription. Would that be OK?
be using Dask's local cluster. If you all are OK with accepting Dask &
distributed as dependencies for the doc build then I'll get to work on that.
backend=
, so that future PRs don't accidentally hardcode a backend?