Программно установить привязку графического процессора к обучению XGBoost - PullRequest
0 голосов
/ 03 ноября 2019

Не ясно, как установить привязку графического процессора к конкретному графическому процессору. Моя машина имеет 4 графических процессора (экземпляр Large Azure NV), и у меня есть 4 аналогичные рабочие нагрузки, которые я хотел бы отправить на каждый из графических процессоров.

Предполагается, что графический процессор установлен с использованием параметра gpu_id в конструкторе XGBClassifier, однако передача любого значения выше 0 приводит к ошибке.

model = XGBClassifier(objective="binary:logistic", tree_method='gpu_hist', gpu_id=gpuID,n_estimators=5000,learning_rate=0.01)

При установке значения gpuID в значение 1 по умолчанию0: xgboost.core.XGBoostError: [01:51:18] c:\jenkins\workspace\xgboost-win64_release_0.90\src\common\common.h:182: Check failed: n_gpus <= n_available_devices (1 vs. 0) : Starting from gpu id: 1, there are only 0 available devices, while n_gpus is set to: 1

При установке устаревших n_gpus получил эту ошибку: xgboost.core.XGBoostError: [01:53:19] c:\jenkins\workspace\xgboost-win64_release_0.90\src\common\common.h:182: Check failed: n_gpus <= n_available_devices (4 vs. 0) : Starting from gpu id: 1, there are only 0 available devices, while n_gpus is set to: 4

...