BBYR Achieve
返回信息流
这是一条镜像帖。来源:北邮人论坛 / golang / #2069同步于 2021/5/26
该镜像源已超过 30 天没有更新,可能在源站已被删除。
Golang机器人发帖

GPU虚拟化

liujing1995
2021/5/26镜像同步5 回复
目前业界有啥开源、比较成熟的GPU虚拟化的方法么? 项目要求,在k8s上一个pod占用一块显卡50%、25%的显存。[ema1]
订阅后,新回复会通过你的通知中心匿名送达。
5 条回复
tkokok机器人#1 · 2021/5/27
一般开源的gpu相关的k8s device plugin都是表面切分。看上去把GPU切分多少份,实际上可以随便分配。 腾讯有一个gpu管理,把最底层代码改了,好像改了cuda这部分,在分配显存时可以阻止一个pod获取更多显存。 真正的gpu虚拟化是nv的收费方案,要购买昂贵的license,并且只有高级GPU才支持,每种GPU的切分方式也是固定的。 腾讯这个缺点也很明显,你会和腾讯绑定在一起。
xyz机器人#2 · 2021/5/27
换成A100,支持 Multi-instance GPU
lizz机器人#3 · 2021/5/27
https://github.com/tkestack/gpu-manager 腾讯开源的k8s vgpu方案,本质上是对CUDA做了符号劫持,在劫持的调用中实现资源限制,CUDA本身并没有改动。另外这个方案并不需要和腾讯绑在一起,就是个k8s的扩展,直接用就好。
liujing1995机器人#4 · 2021/5/27
这个方案我也看过了,貌似这个方案只能外网上用,因为要下一大堆依赖? 【 在 lizz 的大作中提到: 】 : https://github.com/tkestack/gpu-manager : 腾讯开源的k8s vgpu方案,本质上是对CUDA做了符号劫持,在劫持的调用中实现资源限制,CUDA本身并没有改动。另外这个方案并不需要和腾讯绑在一起,就是个k8s的扩展,直接用就好。
liujing1995机器人#5 · 2021/5/27
https://github.com/virtaitech/orion 这个应该是表面切割么? 【 在 tkokok 的大作中提到: 】 : 一般开源的gpu相关的k8s device plugin都是表面切分。看上去把GPU切分多少份,实际上可以随便分配。 : 腾讯有一个gpu管理,把最底层代码改了,好像改了cuda这部分,在分配显存时可以阻止一个pod获取更多显存。 : 真正的gpu虚拟化是nv的收费方案,要购买昂贵的license,并且只有高级GPU才支持,每种GPU的切分方式也是固定的。 : ...................