在容器中使用 GPU
要充分利用图形处理单元(GPU)带来的性能优势,您可以在容器中使用主机系统的 GPU。默认情况下,容器无法访问其宿主机的硬件资源。要使容器能够访问主机系统的 NVIDIA® GPU,您需要:
在安装了适当的 NVIDIA GPU 驱动程序的主机系统上运行容器,例如使用 NVIDIA GPU 优化 AMI。
在执行
docker run命令时使用--gpus标志,使主机的 GPU 对容器可见。若需使容器访问主机上的所有 GPU,请将此标志设置为all。例如,运行一个 MATLAB® 容器,并通过执行如下命令为其提供对主机 GPU 的访问权限:docker run --gpus all mathworks/matlab
检查容器对 GPU 的访问权限
要检查容器是否能够访问宿主机的 GPU,请在容器中打开 MATLAB 并执行以下命令:
gpuDeviceTable
ans=2×5 table
Index Name ComputeCapability DeviceAvailable DeviceSelected
_____ _____________ _________________ _______________ ______________
1 "TITAN RTX" "7.5" true true
2 "Quadro K620" "5.0" true false
gpuDevice 或 gpuDeviceCount 函数。有关此命令的更多信息以及如何选择特定 GPU,请参阅识别并选择 GPU 设备 (Parallel Computing Toolbox)。使用 GPU 加速 MATLAB 代码
在为容器授予 GPU 访问权限后,您可利用其计算能力加速 MATLAB 代码的运行,例如并行训练神经网络。要开始使用,请参阅 在 GPU 上运行 MATLAB 函数 (Parallel Computing Toolbox)。要了解如何使用多个 GPU 并行训练单个神经网络,请参阅Deep Learning with MATLAB on Multiple GPUs (Deep Learning Toolbox)。
另请参阅
gpuDeviceTable (Parallel Computing Toolbox)