目录

Kubernetes-v1.8对GPU的支持

概述

针对 Kubernetes 1.8

在人工智能和深度学习领域,算法工程师对 GPU 的使用越来越多,因此用户也希望通过 Kubernetes 来为模型训练任务申请 GPU 资源。

Kubernetes 支持 GPU 有几个前提条件。

  1. 工作Node需要安装Nvidia的驱动程序
  2. 工作Node的kubelet需要在启动参数增加 --feature-gates="Accelerators=true"
  3. 工作Node安装Nvidia-docker

alpha.kubernetes.io/nvdia-gpu 是 Nvidia GPU 的资源名称。

GPU 目前还有一些限制。

  1. 只能通过limits字段来配置,还不支持request
  2. 容器和容器之间,以及Pod之间也不共享GPU
  3. 容器只能请求整数个GPU
  4. 集群需要运行相同型号的GPU硬件

容器需要访问 CUDA 库,一般来说 CUDA 库可以安装在工作 Node 上然后通过 hostPath 来挂载,又或者按照不同的 GPU 版本等在镜像里安装。

参考资料

警告
本文最后更新于 2017年2月1日,文中内容可能已过时,请谨慎参考。