行业标准网
(19)国家知识产权局 (12)发明 专利 (10)授权公告 号 (45)授权公告日 (21)申请 号 202210627516.3 (22)申请日 2022.06.06 (65)同一申请的已公布的文献号 申请公布号 CN 114706690 A (43)申请公布日 2022.07.05 (73)专利权人 浪潮通信技 术有限公司 地址 266107 山东省青岛市城阳区丹山工 业园湘潭路2号 (72)发明人 薛少宁 林巍  (74)专利代理 机构 北京路浩知识产权代理有限 公司 11002 专利代理师 肖艳 (51)Int.Cl. G06F 9/50(2006.01) G06F 9/48(2006.01)(56)对比文件 CN 111506404 A,2020.08.07 CN 112559164 A,2021.0 3.26 CN 112231049 A,2021.01.15 EP 387610 0 A2,2021.09.08 WO 2022062650 A1,202 2.03.31 WO 202120 3805 A1,2021.10.14 CN 111913794 A,2020.1 1.10 US 202016719 9 A1,2020.0 5.28 汤小春等.数据中心上异构资源的细粒度分 配算法研究. 《西北工业大 学学报》 .2020,(第0 3 期), 审查员 荆苏丹 (54)发明名称 一种Kubernetes容器共享GPU方法及系统 (57)摘要 本发明提供一种Kubernetes容器共 享GPU方 法及系统, 属于计算机技术领域, 包括: 在运行节 点上挂载图形处理器GPU, 获取每个运行节点的 GPU上报资源; 部署GPU扩展调度器; 为每个运行 节点部署GPU共享设备插件组件, 获取具有共享 GPU需求的运行节点; 基于 具有共享 GPU需求的运 行节点构建pod, 在pod中下 发GPU共享资源。 本发 明通过在Kubernetes中原有调度系统基础上增 加GPU扩展调度参数, 形 成GPU扩展调度器, 由GPU 共享设备插件组件实现在Kubernetes上pod在使 用GPU设备时显存级别的调度和绑定, 解决了 Kubernetes不能跨pod共享GPU的问题。 权利要求书2页 说明书8页 附图2页 CN 114706690 B 2022.09.16 CN 114706690 B 1.一种Kubernetes容器共享GPU方法, 其特 征在于, 包括: 确定容器编排引擎Kubernetes中的运行节点, 在所述运行节点上挂载图形处理器GPU, 获取每个运行节点的GPU上报资源; 在所述Kubernetes中部署GPU扩展调度器, 所述GPU扩展调度器包括GPU共享策略配置 参数; 为每个运行节点部署GPU共享设备插件组件, 获取具有共享GPU需求的运行节点, 确定 GPU共享资源; 调用所述Kubernetes, 基于所述具有共享GPU需求的运行节点构建容器组pod, 在所述 pod中下发所述GPU共享资源; 所述在所述Kubernetes中部署GPU扩展调度器, 所述GPU扩展调度器包括GPU共享策略 配置参数, 包括: 在所述Kubernetes中的原始调度器上添加GPU内存参数和GPU设备参数, 形成所述GPU 扩展调度器; 控制所述Kubernetes中的全局调度器获取每个运行节点上的单个GPU内存, 并控制 所 述GPU扩展调度器将GPU分配结果输入至控制器字段注解Pod  Spec Annotation中。 2.根据权利要求1所述的Kubernetes容器共享GPU方法, 其特征在于, 所述确定容器编 排引擎Kuber netes中的运行节 点, 在所述运行节 点上挂载图形 处理器GPU, 获取每个运行节 点的GPU上报资源, 包括: 部署Kubernetes集群, 在所述Kubernetes集群中确定容器运行时, 获取支持GPU的所述 运行节点; 利用图形查看命令获取所述运行节点的GPU数量和GPU内存, 确定所述运行节点挂载 GPU设备。 3.根据权利要求1所述的Kubernetes容器共享GPU方法, 其特征在于, 所述为每个运行 节点部署GPU共享设备插件组件, 获取具有共享GPU需求的运行节点, 确 定GPU共享资源, 包 括: 基于守护进程控制器Daemo nSet, 为每 个运行节点部署所述GPU共享设备插 件组件; 确定为所述具有共享GPU需求的运行节点添加GPU共享节点标签, 获得所述GPU共享资 源。 4.根据权利要求3所述的Kubernetes容器共享GPU方法, 其特征在于, 所述为每个运行 节点部署GPU共享设备插件组件, 获取具有共享GPU需求的运行节点, 确定GPU共享资源之 后, 还包括: 将所述运行节点的GPU数量和GPU内存上报至控制器Kubelet; 由所述Kubelet将所述运行节点的GPU数量和GPU内存上报至集群接口服务器 Kubernetes  API Server。 5.根据权利要求1所述的Kubernetes容器共享GPU方法, 其特征在于, 所述调用所述 Kubernetes, 基于所述具有共享GPU需求的运行节点构建控制器pod, 在所述pod中下发GPU 共享资源信息, 包括: 调用Kubernetes集群构建p od, 在pod部署脚 本注解中确定给p od的资源resources字段 添加所述GPU扩展调度器中的GPU内存参数和GPU设备参数;权 利 要 求 书 1/2 页 2 CN 114706690 B 2基于所述GPU扩展调度器, 绑定所述 运行节点和pod; 控制Kubelet接收绑定后运行节点和pod的关联事件, 由Kubelet在所述运行节点上创 建pod实体, 在所述pod实体中下发所述GPU共享资源信息 。 6.根据权利要求5所述的Kubernetes容器共享GPU方法, 其特征在于, 所述基于所述GPU 扩展调度器, 绑定所述 运行节点和pod, 包括: 基于资源调度策略binpack规则获取所述运行节点对应 的GPU, 分别将所述GPU的设备 地址信息存储于po d的注解annotation中, 以及所述pod对应的GPU内存存储于pod的GPU内 存应用时间注释中, 调用Kubernetes  API Server; 利用所述Kubernetes  API Server将所述 运行节点和所述pod进行绑定 。 7.一种Kubernetes容器共享GPU系统, 其特 征在于, 包括: 获取模块, 用于确定Kubernetes中的运行节点, 在所述运行节点上挂载GPU, 获取每个 运行节点的GPU上报资源; 部署模块, 用于在所述Kubernetes中部署GPU扩展调度器, 所述GPU扩展调度器包括GPU 共享策略配置参数; 确定模块, 用于为每个运行节点部署GPU共享设备插件组件, 获取具有共享GPU需求的 运行节点, 确定GPU共享资源; 调用模块, 用于调用所述Kubernetes, 基于所述具有共享GPU需求的运行节点构建pod, 在所述pod中下发所述GPU共享资源; 所述部署模块具体用于: 在所述Kubernetes中的原始调度器上添加GPU内存参数和GPU设备参数, 形成所述GPU 扩展调度器; 控制所述Kubernetes中的全局调度器获取每个运行节点上的单个GPU内存, 并控制 所 述GPU扩展调度器将GPU分配结果输入至控制器字段注解Pod  Spec Annotation中。 8.一种电子设备, 包括存储器、 处理器及存储在所述存储器上并可在所述处理器上运 行的计算机程序, 其特征在于, 所述处理器执行所述程序时实现如权利要求1至6任一项所 述Kubernetes容器共享GPU方法。 9.一种非暂态计算机可读存储介质, 其上存储有计算机程序, 其特征在于, 所述计算机 程序被处 理器执行时实现如权利要求1至 6任一项所述Kubernetes容器共享GPU方法。权 利 要 求 书 2/2 页 3 CN 114706690 B 3

.PDF文档 专利 一种Kubernetes容器共享GPU方法及系统

文档预览
中文文档 13 页 50 下载 1000 浏览 0 评论 309 收藏 3.0分
温馨提示:本文档共13页,可预览 3 页,如浏览全部内容或当前文档出现乱码,可开通会员下载原始文档
专利 一种Kubernetes容器共享GPU方法及系统 第 1 页 专利 一种Kubernetes容器共享GPU方法及系统 第 2 页 专利 一种Kubernetes容器共享GPU方法及系统 第 3 页
下载文档到电脑,方便使用
本文档由 人生无常 于 2024-03-18 13:25:40上传分享
站内资源均来自网友分享或网络收集整理,若无意中侵犯到您的权利,敬请联系我们微信(点击查看客服),我们将及时删除相关资源。