Amazon web services AWS DL AMI上带GPU支持的docker image xgboost

Amazon web services AWS DL AMI上带GPU支持的docker image xgboost,amazon-web-services,docker,amazon-ec2,xgboost,Amazon Web Services,Docker,Amazon Ec2,Xgboost,我试图在AWS GPU机器(p3系列)上托管的docker映像中运行支持GPU的XGBoost,但我一直得到: xgboost.core.XGBoostError: [05:48:26] ../src/tree/updater_gpu_hist.cu:786: Exception in gpu_hist: [05:48:26] ../src/tree/updater_gpu_hist.cu:795: Check failed: device_ >= 0 (-1 vs. 0) : Must

我试图在AWS GPU机器(p3系列)上托管的docker映像中运行支持GPU的XGBoost,但我一直得到:

xgboost.core.XGBoostError: [05:48:26] ../src/tree/updater_gpu_hist.cu:786: Exception in gpu_hist: [05:48:26] ../src/tree/updater_gpu_hist.cu:795: Check failed: device_ >= 0 (-1 vs. 0) : Must have at least one device
i、 e.xgboost在我的docker映像中找不到GPU。主机运行此AWS AMI:

amzn2-ami-ecs-gpu-hvm-2.0.20210301-x86_64-ebs
它附带NVIDIA CUDA、cuDNN、NCCL、英特尔MKL-DNN、Docker、NVIDIA Docker支持。 我使用以下命令运行docker映像:

docker run --rm --gpus all --runtime nvidia <imageid> someparameter
docker-run--rm--gpus-all--runtime-nvidia-someparameter
它运行一些与
tree\u method='gpu\u hist'
匹配的xgboost,但由于上面提到的错误消息而崩溃。代码本身在主机上运行良好,所以我一定在Docker映像中做了一些愚蠢的事情

我的docker基本图像来自ubuntu:18.04 另外,当我登录到docker映像时,我可以运行
nvidia smi
,GPU似乎被正确检测到,但XGBoost似乎没有找到它。 我认为,对于特定的AMI,我在运行docker时使用的
“--runtime nvidia”
应该负责加载GPU支持所需的所有LIB,但情况似乎并非如此。我是一个码头工人初学者,所以我可能错过了一些明显的东西。我也找不到支持xgboost w/GPU的公共docker镜像,但如果有人能给我指一个,那也太好了