scikit-learn n_jobs запускает сотни потоков на 28-ядерном компьютере с двумя процессорами - PullRequest
0 голосов
/ 10 июня 2019

Насколько я понимаю из документации API, n_jobs должен контролировать количество потоков, запускаемых методами fit() и predict() .Это действительно так для моего ноутбука (четырехъядерный MacBook Pro i7), но когда я запускаю тот же код на сервере Linux, на котором установлены 2x 14-ядерных процессоров Xeon, я вижу сотни потоков, генерируемых процессом python.Есть что-то не так?

def getRFClassifier():
return RandomForestClassifier(n_estimators=args.ntrees, min_samples_leaf=10, n_jobs=args.nthreads, class_weight="balanced_subsample")

У меня есть ntrees=1000 и nthreads=-2 (я также пытался -1 и уменьшить число до 20) Я все еще получаю ПУТЬ слишком много процессов, чем ожидалось.

Перед началом обучения: enter image description here

После: enter image description here

Что-нибудь, что я мог пропустить?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...