Kubernetes-v1.8对GPU的支持
目录
概述
针对 Kubernetes 1.8
在人工智能和深度学习领域,算法工程师对 GPU 的使用越来越多,因此用户也希望通过 Kubernetes 来为模型训练任务申请 GPU 资源。
Kubernetes 支持 GPU 有几个前提条件。
- 工作Node需要安装Nvidia的驱动程序
- 工作Node的kubelet需要在启动参数增加
--feature-gates="Accelerators=true"
- 工作Node安装Nvidia-docker
alpha.kubernetes.io/nvdia-gpu
是 Nvidia GPU 的资源名称。
GPU 目前还有一些限制。
- 只能通过limits字段来配置,还不支持request
- 容器和容器之间,以及Pod之间也不共享GPU
- 容器只能请求整数个GPU
- 集群需要运行相同型号的GPU硬件
容器需要访问 CUDA 库,一般来说 CUDA 库可以安装在工作 Node 上然后通过 hostPath
来挂载,又或者按照不同的 GPU 版本等在镜像里安装。
参考资料
警告
本文最后更新于 2017年2月1日,文中内容可能已过时,请谨慎参考。