k8s gpu 共享方案
1.配置环境变量实现
通过在POD的启动文件中,配置NVIDIA_VISIBLE_DEVICES的环境变量,指定显卡号。NVIDIA_VISIBLE_DEVICES可配置为具体的显卡号,也可以配置all
env:
- name: NVIDIA_VISIBLE_DEVICES
value: {{ GPU_ID }}
2.通过aliyun gpushare插件实现
参考链接:https://github.com/AliyunContainerService/gpushare-scheduler-extender
注意:gpushare scheduler负责按照显存维度为单位,在集群中去调度作业,也就是找到哪个node上的哪块GPU卡还能提供作业所需显存大小。作业pod被调度到node上,会绑定合适的GPU卡到容器内。此时调度就完成了。显卡资源不存在进程资源隔离。