gpu-manager
gpu-manager copied to clipboard
/tmp/cuda-control/src/loader.c:865 can't find library libcuda.so by use image thomassong/gpu-manager:master
I get an error when I start multiple GPU-resource pods simultaneously (concurrently) using vcuda, error as follow:
I see image thomassong/gpu-manager:master will slove this problem, but it doesn't work for me. How to slove this problem??
我也遇到这种情况,在一个node节点上,同时创建多个pod会出现这种情况;一次启动一个pod不会出现这种情况,请问你有解决嘛?
我也遇到这种情况,在一个node节点上,同时创建多个pod会出现这种情况;一次启动一个pod不会出现这种情况,请问你有解决嘛?
没有,你用的哪个版本,我看以往issue中说thomassong/gpu-manager:master这个镜像可以解决,但是我用了之后还是有问题。
我也遇到这种情况,在一个node节点上,同时创建多个pod会出现这种情况;一次启动一个pod不会出现这种情况,请问你有解决嘛?
没有,你用的哪个版本,我看以往issue中说thomassong/gpu-manager:master这个镜像可以解决,但是我用了之后还是有问题。
我也是master代码编译的镜像,我测试多次 每次启动一个pod是没有问题,一次性启动多个pod在一个node上就会出现这个错误。你是启动一个pod都有这个问题吗?
跟你一样,启动一个没问题,挨个启动也没问题,就是在一个node上同时启动多个pod会有这个报错。我担心他的master镜像有问题,从master分支代码从新编译了一下,还是一样的。
跟你一样,启动一个没问题,挨个启动也没问题,就是在一个node上同时启动多个pod会有这个报错。我担心他的master镜像有问题,从master分支代码从新编译了一下,还是一样的。
是的,看来我们俩问题是一样的,其他issues上说去年已经解决这个,不知道为啥现在还有这个问题
跟你一样,启动一个没问题,挨个启动也没问题,就是在一个node上同时启动多个pod会有这个报错。我担心他的master镜像有问题,从master分支代码从新编译了一下,还是一样的。
是的,看来我们俩问题是一样的,其他issues上说去年已经解决这个,不知道为啥现在还有这个问题
嗯 等等看有没有其他回复吧,如果你有好的解决方法,麻烦也分享一下
跟你一样,启动一个没问题,挨个启动也没问题,就是在一个node上同时启动多个pod会有这个报错。我担心他的master镜像有问题,从master分支代码从新编译了一下,还是一样的。
是的,看来我们俩问题是一样的,其他issues上说去年已经解决这个,不知道为啥现在还有这个问题
嗯 等等看有没有其他回复吧,如果你有好的解决方法,麻烦也分享一下
hi,我看下项目的部分代码,发现项目无法解决我们的这种情况,唯一可行的方案就是挨个启动。 如果是应用到线上环境可以尝试修改kubernetes调度器添加过滤项,将 当前时间 - Node上VGPU资源POD最大创建时间 <= 10s 的node过滤掉,保证每个Node上VGPU POD启动时间错开,一个Node上不同时调度多个VGPU POD
hi,我看下项目的部分代码,发现项目无法解决我们的这种情况,唯一可行的方案就是挨个启动。 如果是应用到线上环境可以尝试修改kubernetes调度器添加过滤项,将 当前时间 - Node上VGPU资源POD最大创建时间 <= 10s 的node过滤掉,保证每个Node上VGPU POD启动时间错开,一个Node上不同时调度多个VGPU POD
针对k8s添加过滤器,可以详细说明一下如何添加么,谢啦
老哥,你知道这个问题的根因是哪部分代码有问题吗?
跟你一样,启动一个没问题,挨个启动也没问题,就是在一个node上同时启动多个pod会有这个报错。我担心他的master镜像有问题,从master分支代码从新编译了一下,还是一样的。
是的,看来我们俩问题是一样的,其他issues上说去年已经解决这个,不知道为啥现在还有这个问题
嗯 等等看有没有其他回复吧,如果你有好的解决方法,麻烦也分享一下
hi,我看下项目的部分代码,发现项目无法解决我们的这种情况,唯一可行的方案就是挨个启动。 如果是应用到线上环境可以尝试修改kubernetes调度器添加过滤项,将 当前时间 - Node上VGPU资源POD最大创建时间 <= 10s 的node过滤掉,保证每个Node上VGPU POD启动时间错开,一个Node上不同时调度多个VGPU POD
老哥,你知道这个问题的根因是哪部分代码有问题吗?
跟你一样,启动一个没问题,挨个启动也没问题,就是在一个node上同时启动多个pod会有这个报错。我担心他的master镜像有问题,从master分支代码从新编译了一下,还是一样的。
是的,看来我们俩问题是一样的,其他issues上说去年已经解决这个,不知道为啥现在还有这个问题
嗯 等等看有没有其他回复吧,如果你有好的解决方法,麻烦也分享一下
hi,我看下项目的部分代码,发现项目无法解决我们的这种情况,唯一可行的方案就是挨个启动。 如果是应用到线上环境可以尝试修改kubernetes调度器添加过滤项,将 当前时间 - Node上VGPU资源POD最大创建时间 <= 10s 的node过滤掉,保证每个Node上VGPU POD启动时间错开,一个Node上不同时调度多个VGPU POD
老哥,你知道这个问题的根因是哪部分代码有问题吗?
https://github.com/tkestack/gpu-manager/blob/master/pkg/services/allocator/nvidia/allocator.go 中 663行 Allocate 方法 这个方法里面会遍历pods获取没有分配vgpu的pod。 这种情况会存在一个问题,如果同时存在多个pod没有分配vgpu,这种情况下找的pod会出现错误。 当前pod1请求了接口,反而是找到pod2,这种情况下信息就是错误的。
https://github.com/tkestack/gpu-manager/blob/master/pkg/server/server.go 中 Allocate 方法打印返回值,你会发现返回值中一个hostpath属性,值是跟pod路径有关联的。如果上一步查找出来的pod是错误的,那么这个hostpath属性值也是错误的。这是为啥同时启动多个pod会出现错误原因
上述是我个人的分析,仅供参考
跟你一样,启动一个没问题,挨个启动也没问题,就是在一个node上同时启动多个pod会有这个报错。我担心他的master镜像有问题,从master分支代码从新编译了一下,还是一样的。
是的,看来我们俩问题是一样的,其他issues上说去年已经解决这个,不知道为啥现在还有这个问题
嗯 等等看有没有其他回复吧,如果你有好的解决方法,麻烦也分享一下
hi,我看下项目的部分代码,发现项目无法解决我们的这种情况,唯一可行的方案就是挨个启动。 如果是应用到线上环境可以尝试修改kubernetes调度器添加过滤项,将 当前时间 - Node上VGPU资源POD最大创建时间 <= 10s 的node过滤掉,保证每个Node上VGPU POD启动时间错开,一个Node上不同时调度多个VGPU POD
老哥,你知道这个问题的根因是哪部分代码有问题吗?
https://github.com/tkestack/gpu-manager/blob/master/pkg/services/allocator/nvidia/allocator.go 中 663行 Allocate 方法 这个方法里面会遍历pods获取没有分配vgpu的pod。 这种情况会存在一个问题,如果同时存在多个pod没有分配vgpu,这种情况下找的pod会出现错误。 当前pod1请求了接口,反而是找到pod2,这种情况下信息就是错误的。
https://github.com/tkestack/gpu-manager/blob/master/pkg/server/server.go 中 Allocate 方法打印返回值,你会发现返回值中一个hostpath属性,值是跟pod路径有关联的。如果上一步查找出来的pod是错误的,那么这个hostpath属性值也是错误的。这是为啥同时启动多个pod会出现错误原因
上述是我个人的分析,仅供参考
目前在公司内部是通过修改调度器,在调度器里面添加过滤 一个node上不同时调度多个vgpu pod
跟你一样,启动一个没问题,挨个启动也没问题,就是在一个node上同时启动多个pod会有这个报错。我担心他的master镜像有问题,从master分支代码从新编译了一下,还是一样的。
是的,看来我们俩问题是一样的,其他issues上说去年已经解决这个,不知道为啥现在还有这个问题
嗯 等等看有没有其他回复吧,如果你有好的解决方法,麻烦也分享一下
hi,我看下项目的部分代码,发现项目无法解决我们的这种情况,唯一可行的方案就是挨个启动。 如果是应用到线上环境可以尝试修改kubernetes调度器添加过滤项,将 当前时间 - Node上VGPU资源POD最大创建时间 <= 10s 的node过滤掉,保证每个Node上VGPU POD启动时间错开,一个Node上不同时调度多个VGPU POD
老哥,你知道这个问题的根因是哪部分代码有问题吗?
https://github.com/tkestack/gpu-manager/blob/master/pkg/services/allocator/nvidia/allocator.go 中 663行 Allocate 方法 这个方法里面会遍历pods获取没有分配vgpu的pod。 这种情况会存在一个问题,如果同时存在多个pod没有分配vgpu,这种情况下找的pod会出现错误。 当前pod1请求了接口,反而是找到pod2,这种情况下信息就是错误的。 https://github.com/tkestack/gpu-manager/blob/master/pkg/server/server.go 中 Allocate 方法打印返回值,你会发现返回值中一个hostpath属性,值是跟pod路径有关联的。如果上一步查找出来的pod是错误的,那么这个hostpath属性值也是错误的。这是为啥同时启动多个pod会出现错误原因 上述是我个人的分析,仅供参考
目前在公司内部是通过修改调度器,在调度器里面添加过滤 一个node上不同时调度多个vgpu pod
是修改gpu-admission吗?
不是,是kube-scheduler
不是,是kube-scheduler
可以请教一下 修改方法吗?
https://github.com/kubernetes-sigs/scheduler-plugins 看下这个,在里面添加你自己的插件