I'm running a big benchmark suite with RandomizedSearchCV(n_jobs=-1).
Unfortunately, computation time is reported only if n_jobs is None or 1.
I don't understand the reason #229. Why isn't the interpretation left out to the user?
As a side note: n_jobs=None can be overridden with a context manager:
from joblib import parallel_backend
with parallel_backend('loky', n_jobs=-1):
RandomizedSearchCV(n_jobs=None)
This is equivalent to just calling RandomizedSearchCV(n_jobs=-1).
With the latter, openml won't report computation time, but as far as I understand, the former will run just fine and report the computation time. So it seems that the check isn't properly enforced anyway.
CC @amueller
I'm running a big benchmark suite with
RandomizedSearchCV(n_jobs=-1).Unfortunately, computation time is reported only if
n_jobsisNoneor1.I don't understand the reason #229. Why isn't the interpretation left out to the user?
As a side note:
n_jobs=Nonecan be overridden with a context manager:This is equivalent to just calling
RandomizedSearchCV(n_jobs=-1).With the latter, openml won't report computation time, but as far as I understand, the former will run just fine and report the computation time. So it seems that the check isn't properly enforced anyway.
CC @amueller