(19)国家知识产权局
(12)发明 专利
(10)授权公告 号
(45)授权公告日
(21)申请 号 202210580679.0
(22)申请日 2022.05.26
(65)同一申请的已公布的文献号
申请公布号 CN 114675976 A
(43)申请公布日 2022.06.28
(73)专利权人 深圳前海环融联易信息科技 服务
有限公司
地址 518101 广东省深圳市前海深港合作
区前湾一路1号A栋201室
(72)发明人 胡俊彬
(74)专利代理 机构 深圳市精英创新知识产权代
理有限公司 4 4740
专利代理师 林燕云
(51)Int.Cl.
G06F 9/50(2006.01)G06F 9/54(2006.01)
(56)对比文件
CN 112380020 A,2021.02.19
CN 110515704 A,2019.1 1.29
CN 10976 6174 A,2019.0 5.17
审查员 冷小素
(54)发明名称
基于kubernetes的GP U共享方法、 装置、 设备
及介质
(57)摘要
本发明涉及互联网领域, 提供一种基于
kubernetes的GPU共享方法、 装置、 设备及介质,
在内核层, 通过配置的第一插件监听每个GPU设
备的资源占用信息并记录至预设文件, 当根据预
设文件检测到有GPU设备处于空闲状态, 且有目
标docker请求GP U资源时, 将GP U设备确定为目标
GPU设备, 并利用kubernetes的device ‑plugin插
件将目标GP U设备作为扩展资源上报至kubelet,
通过kubelet上报目标GPU设备至kubernetes, 并
将目标GPU设备映射至目标docker进行使用。 利
用本发明能够实现对GPU资源的共享, 避免造成
GPU资源的浪费, 同时提高了GPU任务的执行效
率。
权利要求书3页 说明书12页 附图2页
CN 114675976 B
2022.09.16
CN 114675976 B
1.一种基于kubernetes的GPU共享方法, 其特征在于, 所述基于kubernetes的GPU共享
方法包括:
通过在内核层配置的第一插件监听每个GPU设备的资源占用信息, 并通过在用户层配
置的第二插 件将每个GPU设备的资源占用信息记录 至预设文件;
根据所述预设文件检测是否有GPU设备处于空 闲状态;
当检测到有GPU设备处于空闲状态, 且有目标docker请求GPU资源时, 将所述GPU设备确
定为目标GPU设备, 并利用所述kubernetes的device ‑plugin插件将所述目标GPU设备作为
扩展资源上报至kubelet;
通过所述kubelet上报所述目标GPU设备至所述kubernetes, 并将所述目标GPU设备映
射至所述目标docker进行使用; 在将所述目标GPU设备映射至所述目标docker进行使用后,
还包括: 获取所述目标GPU设备处于所述空闲状态时所属的docker作为初始docker; 当检测
到所述初始docker请求使用所述目标GPU设备的GPU资源时, 解除所述目标docker对 所述目
标GPU设备的占用, 并将所述目标GPU设备的GPU资源返还至所述初始docker;
其中, 所述第二插件用于处理来自所述内核层的事件, 并回复所述内核层是否可以打
开并使用所述目标GPU设备, 包括: 当检测到所述目标GPU设备处于低优占用, 但被高优占用
的所述目标docker请求时, 结束低优占用进程, 通知上层异步回收容器, 并回复所述内核层
可以打开并使用所述目标GPU设备; 当检测 到所述目标GPU设备处于高优占用时, 且被高优
占用的所述目标docker请求时, 记录所述目标GPU设备被高优占用, 并回复所述内核层可以
打开并使用所述目标GPU设备; 当检测到所述目标GPU设备处于高优占用, 但被低优占用的
所述目标docker请求时, 通知上层异步回收容器, 并回复所述内核层拒绝打开并使用所述
目标GPU设备; 当检测到所述目标GPU设备处于低优占用时, 且被低优占用的所述目标
docker请求时, 记录所述目标GPU设备被低优占用, 并回复所述内核层可以打开并使用所述
目标GPU设备; 其中, 所述高优占用是指占用所述目标GPU设备的资源时具有高优先级, 所述
低优占用是指占用所述目标GPU设备的资源时具有低优先级。
2.如权利要求1所述的基于kubernetes的GPU共享方法, 其特征在于, 所述GPU设备的资
源占用信息包括该GPU设备的打开事 件及关闭事 件;
所述通过配置的第一插件监听每个GPU设备的资源占用信息, 并将每个GPU设备的资源
占用信息记录 至预设文件 包括:
通过所述第一插 件的预设开关控制是否监听每 个GPU设备的资源占用信息;
当通过所述预设开关控制监听每个GPU设备的资源占用信息时, 通过所述第一插件监
听每个GPU设备的打开事 件及关闭事 件;
获取所述打开事件的进程ID, 及获取所述关闭事件的进程ID, 并通过所述第一插件将
所述打开事 件的进程 ID及所述关闭事 件的进程 ID发送至所述第二插 件;
通过所述第二插件将每个GPU设备的资源占用信息记录至所述预设文件, 其中, 每个
GPU设备的资源占用信息包括所述打开事 件的进程 ID及所述关闭事 件的进程 ID。
3.如权利要求2所述的基于kubernetes的GPU共享方法, 其特征在于, 在通过所述第一
插件将所述打开事件的进程ID及所述关闭事件的进程ID发送至配置的第二插件 前, 所述方
法还包括:
向所述第一插 件注册所述第二插 件。权 利 要 求 书 1/3 页
2
CN 114675976 B
24.如权利要求1所述的基于kubernetes的GPU共享方法, 其特征在于, 所述根据所述预
设文件检测是否有GPU设备处于空 闲状态包括:
当根据所述预设文件中的记录检测到有GPU设备被任意docker占用, 且在预设时长内
未被使用时, 确定检测到的GPU设备处于所述空 闲状态。
5.如权利要求1所述的基于kubernetes的GPU共享方法, 其特征在于, 所述将所述目标
GPU设备映射至所述目标docker进行使用包括:
当所述目标docker的数量为多个时, 获取所述目标docker中每个目标docker的请求时
间;
获取所述请求时间最 早的目标docker作为当前目标docker;
将所述目标GPU设备映射至所述当前目标docker进行使用。
6.如权利要求1所述的基于kubernetes的GPU共享方法, 其特征在于, 在解 除所述目标
docker对所述目标GPU设备的占用后, 所述方法还 包括:
记录所述目标docker的任务节点;
当检测到所述目标docker的任务被重启时, 从所述目标docker的任务节点处开始执行
所述目标docker的任务。
7.一种基于kubernetes的GPU共享装置, 其特征在于, 所述基于kubernetes的GPU共享
装置包括:
监听单元, 用于通过在内核层配置的第一插件监听每个GPU设备的资源占用信息, 并通
过在用户层配置的第二插 件将每个GPU设备的资源占用信息记录 至预设文件;
检测单元, 用于根据所述预设文件检测是否有GPU设备处于空 闲状态;
上报单元, 用于当检测到有GPU设备处于空闲状态, 且有目标docker请求GPU资源时, 将
所述GPU设备确定为目标GPU设备, 并利用所述kubernetes的device ‑plugin插件将所述目
标GPU设备作为扩展资源上报至kubelet;
映射单元, 用于通过所述kubelet上报所述目标GPU设备至所述kubernetes, 并将所述
目标GPU设备映射至所述目标docker进行使用; 在将所述目标GPU设备映射至所述目标
docker进行使用后, 获取所述目标GPU设备处于所述空闲状态时所属的docker作为初始
docker; 当检测到所述初始docker请求使用所述目标GPU设备的GPU资源时, 解除所述目标
docker对所述目标GPU设备的占用, 并将所述目标GPU设备的GPU资源返还至所述初始
docker;
其中, 所述第二插件用于处理来自所述内核层的事件, 并回复所述内核层是否可以打
开并使用所述目标GPU设备, 包括: 当检测到所述目标GPU设备处于低优占用, 但被高优占用
的所述目标docker请求时, 结束低优占用进程, 通知上层异步回收容器, 并回复所述内核层
可以打开并使用所述目标GPU设备; 当检测 到所述目标GPU设备处于高优占用时, 且被高优
占用的所述目标docker请求时, 记录所述目标GPU设备被高优占用, 并回复所述内核层可以
打开并使用所述目标GPU设备; 当检测到所述目标GPU设备处于高优占用, 但被低优占用的
所述目标docker请求时, 通知上层异步回收容器, 并回复所述内核层拒绝打开并使用所述
目标GPU设备; 当检测到所述目标GPU设备处于低优占用时, 且被低优占用的所述目标
docker请求时, 记录所述目标GPU设备被低优占用, 并回复所述内核层可以打开并使用所述
目标GPU设备; 其中, 所述高优占用是指占用所述目标GPU设备的资源时具有高优先级, 所述权 利 要 求 书 2/3 页
3
CN 114675976 B
3
专利 基于kubernetes的GPU共享方法、装置、设备及介质
文档预览
中文文档
18 页
50 下载
1000 浏览
0 评论
309 收藏
3.0分
温馨提示:本文档共18页,可预览 3 页,如浏览全部内容或当前文档出现乱码,可开通会员下载原始文档
本文档由 人生无常 于 2024-03-18 13:31:05上传分享