一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

硬件加速资源调度方法和装置与流程

2022-02-25 22:09:47 来源:中国专利 TAG:


1.本公开涉及云计算领域,特别涉及一种硬件加速资源调度方法和装置。


背景技术:

2.在现有技术中,以docker、kubernetes为代表的容器技术,以其轻量级、高可用、易编排的特点逐渐成为物联网和云计算的新宠,容器应用的管理与编排平台研究是容器技术走向落地的关键之一。同时,随着5g、边缘计算的普及与发展,ai(artificial intelligence,人工智能)应用的数量和类型也在逐渐丰富,它们对各类硬件加速资源的需求也逐渐增加,如ai应用的数据训练、特征提取等过程需要gpu(graphics processing unit,图形处理单元)或fpga(field programmable gate array,现场可编程门阵列)加速的算力资源。


技术实现要素:

3.发明人通过研究发现,在面向ai应用的容器云平台中,底层集群通常提供了多种硬件加速资源,如gpu、fpga等,kubernetes以设备插件的方式支持硬件加速资源识别,管理员可以通过标签机制进行资源指定,但是缺少用户视角的硬件加速资源指定方式。
4.据此,本公开提供一种硬件加速资源调度方案,以便实现硬件加速资源的定制化调度。
5.根据本公开实施例的第一方面,提供一种硬件加速资源调度方法,包括:在接收到用户选择硬件加速资源的请求后,根据所述请求确定相对应的模式;若所述模式为定制化模式,则在节点集群中查询出全部具有所述硬件加速资源的节点的定制化标签;根据所述用户预设的策略在全部具有所述硬件加速资源的节点的定制化标签中指定定制化标签;利用kubernetes的节点选择机制,将应用部署到与指定的定制化标签相对应的节点。
6.在一些实施例中,若所述模式为标准模式,则在所述节点集群中查询出全部具有所述硬件加速资源的节点的标准标签;在查询出的全部标准标签中,随机选择一个标准标签;利用所述节点选择机制,将所述应用部署到随机选择的标准标签相对应的节点。
7.在一些实施例中,在具有硬件加速资源的节点加入节点集群的过程中,为加入所述节点集群的节点添加标准标签和定制化标签。
8.在一些实施例中,具有相同硬件加速资源的节点的标准标签相同;所述定制化标签与节点一一对应。
9.根据本公开实施例的第二方面,提供一种硬件加速资源调度装置,包括:接收模块,被配置为接收用户选择硬件加速资源的请求;模式确定模块,被配置为在所述接收模块接收到用户选择硬件加速资源的请求后,根据所述请求确定相对应的模式;资源管理模块,被配置为若所述模式为定制化模式,则在节点集群中查询出全部具有所述硬件加速资源的节点的定制化标签;调度模块,被配置为根据所述用户预设的策略在全部具有所述硬件加速资源的节点的定制化标签中指定定制化标签;部署模块,被配置为利用kubernetes的节
点选择机制,将应用部署到与指定的定制化标签相对应的节点。
10.在一些实施例中,资源管理模块还被配置为若所述模式为标准模式,则在所述节点集群中查询出全部具有所述硬件加速资源的节点的标准标签;调度模块还被配置为在查询出的全部标准标签中,随机选择一个标准标签;部署模块还被配置为利用所述节点选择机制,将所述应用部署到随机选择的标准标签相对应的节点。
11.在一些实施例中,资源管理模块还被配置为在具有硬件加速资源的节点加入节点集群的过程中,为加入所述节点集群的节点添加标准标签和定制化标签。
12.在一些实施例中,具有相同硬件加速资源的节点的标准标签相同;所述定制化标签与节点一一对应。
13.根据本公开实施例的第三方面,提供一种硬件加速资源调度装置,包括:存储器,被配置为存储指令;处理器,耦合到存储器,处理器被配置为基于存储器存储的指令执行实现如上述任一实施例所述的方法。
14.根据本公开实施例的第四方面,提供一种计算机可读存储介质,其中,计算机可读存储介质存储有计算机指令,指令被处理器执行时实现如上述任一实施例涉及的方法。
15.通过以下参照附图对本公开的示例性实施例的详细描述,本公开的其它特征及其优点将会变得清楚。
附图说明
16.构成说明书的一部分的附图描述了本公开的实施例,并且连同说明书一起用于解释本公开的原理。
17.参照附图,根据下面的详细描述,可以更加清楚地理解本公开,其中:
18.图1是根据本公开一个实施例的硬件加速资源调度方法的流程示意图;
19.图2是根据本公开另一个实施例的硬件加速资源调度方法的流程示意图;
20.图3是根据本公开一个实施例的硬件加速资源调度装置的结构示意图;
21.图4是根据本公开另一个实施例的硬件加速资源调度装置的结构示意图。
22.应当明白,附图中所示出的各个部分的尺寸并不是按照实际的比例关系绘制的。此外,相同或类似的参考标号表示相同或类似的构件。
具体实施方式
23.现在将参照附图来详细描述本公开的各种示例性实施例。对示例性实施例的描述仅仅是说明性的,决不作为对本公开及其应用或使用的任何限制。本公开可以以许多不同的形式实现,不限于这里所述的实施例。提供这些实施例是为了使本公开透彻且完整,并且向本领域技术人员充分表达本公开的范围。应注意到:除非另外具体说明,否则在这些实施例中阐述的部件和步骤的相对布置、材料的组分和数值应被解释为仅仅是示例性的,而不是作为限制。
24.本公开中使用的“包括”或者“包含”等类似的词语意指在该词前的要素涵盖在该词后列举的要素,并不排除也涵盖其他要素的可能。
25.本公开使用的所有术语(包括技术术语或者科学术语)与本公开所属领域的普通技术人员理解的含义相同,除非另外特别定义。还应当理解,在诸如通用字典中定义的术语
应当被解释为具有与它们在相关技术的上下文中的含义相一致的含义,而不应用理想化或极度形式化的意义来解释,除非这里明确地这样定义。
26.对于相关领域普通技术人员已知的技术、方法和设备可能不作详细讨论,但在适当情况下,所述技术、方法和设备应当被视为说明书的一部分。
27.图1是根据本公开一个实施例的硬件加速资源调度方法的流程示意图。在一些实施例中,下面的硬件加速资源调度方法步骤由硬件加速资源调度装置执行。
28.在步骤101,在接收到用户选择硬件加速资源的请求后,根据请求确定相对应的模式。
29.在步骤102,若模式为定制化模式,则在节点集群中查询出全部具有硬件加速资源的节点的定制化标签。
30.在一些实施例中,在具有硬件加速资源的节点加入节点集群的过程中,为加入节点集群的节点添加标准标签和定制化标签。需要说明的是,具有相同硬件加速资源的节点的标准标签相同,定制化标签与节点一一对应。
31.例如,若一个gpu节点加入节点集群中,为该节点添加标准标签和定制化标签。标准标签可以为acc-std-gpu,定制化标签可以为acc-cus-gpu-1。
32.在步骤103,根据用户预设的策略在全部具有硬件加速资源的节点的定制化标签中指定定制化标签。
33.例如,用户可根据自定义策略,选择定制化标签acc-cus-gpu-1和acc-cus-gpu-2,以实现双物理节点备份。
34.在步骤104,利用kubernetes的节点选择(nodeselector)机制,将应用部署到与指定的定制化标签相对应的节点。
35.这里需要说明的是,由于节点选择机制并不是本公开的发明点所在,因此这里不展开描述。
36.在本公开上述实施例提供的硬件加速资源调度方法中,通过利用硬件加速资源的命名规则,为容器云用户提供了硬件加速资源的指定方法,以使得基于kubernetes的容器云能够提供用户视角的硬件加速资源调度。
37.图2是根据本公开另一个实施例的硬件加速资源调度方法的流程示意图。在一些实施例中,下面的硬件加速资源调度方法步骤由硬件加速资源调度装置执行。
38.在步骤201,在接收到用户选择硬件加速资源的请求后,根据请求确定相对应的模式。
39.在步骤202,若模式为标准模式,则在节点集群中查询出全部具有硬件加速资源的节点的标准标签。
40.在步骤203,在查询出的全部标准标签中,随机选择一个标准标签。
41.在步骤204,利用节点选择机制,将应用部署到随机选择的标准标签相对应的节点。
42.这里需要说明的是,由于具有同种资源的节点的标准标签是相同的,因此在应用部署时会在全部具有该标签的节点中随机选择一个进行部署。
43.图3是根据本公开一个实施例的硬件加速资源调度装置的结构示意图。如图3所示,硬件加速资源调度装置包括接收模块31、模式确定模块32、资源管理模块33、调度模块
34和部署模块35。
44.接收模块31被配置为接收用户选择硬件加速资源的请求。
45.模式确定模块32被配置为在接收模块接收到用户选择硬件加速资源的请求后,根据请求确定相对应的模式。
46.资源管理模块33被配置为若模式为定制化模式,则在节点集群中查询出全部具有硬件加速资源的节点的定制化标签。
47.在一些实施例中,资源管理模块33还被配置为在具有硬件加速资源的节点加入节点集群的过程中,为加入节点集群的节点添加标准标签和定制化标签。其中,具有相同硬件加速资源的节点的标准标签相同,定制化标签与节点一一对应。
48.例如,若一个gpu节点加入节点集群中,为该节点添加标准标签和定制化标签。标准标签可以为acc-std-gpu,定制化标签可以为acc-cus-gpu-1。
49.调度模块34被配置为根据用户预设的策略在全部具有硬件加速资源的节点的定制化标签中指定定制化标签。
50.例如,用户可根据自定义策略,选择定制化标签acc-cus-gpu-1和acc-cus-gpu-2,以实现双物理节点备份。
51.部署模块35被配置为利用kubernetes的节点选择机制,将应用部署到与指定的定制化标签相对应的节点。
52.在一些实施例中,资源管理模块33还被配置为若模式为标准模式,则在节点集群中查询出全部具有硬件加速资源的节点的标准标签。调度模块34还被配置为在查询出的全部标准标签中,随机选择一个标准标签。部署模块35还被配置为利用节点选择机制,将应用部署到随机选择的标准标签相对应的节点。
53.这里需要说明的是,由于具有同种资源的节点的标准标签是相同的,因此在应用部署时会在全部具有该标签的节点中随机选择一个进行部署。
54.在本公开上述实施例提供的硬件加速资源调度装置中,通过利用硬件加速资源的命名规则,为容器云用户提供了硬件加速资源的指定方法,以使得基于kubernetes的容器云能够提供用户视角的硬件加速资源调度。
55.图4是根据本公开另一个实施例的硬件加速资源调度装置的结构示意图。如图4所示,硬件加速资源调度装置包括存储器41和处理器42。
56.存储器41用于存储指令。处理器42耦合到存储器41。处理器42被配置为基于存储器存储的指令执行实现如图1或图2中任一实施例涉及的方法。
57.如图4所示,硬件加速资源调度装置还包括通信接口43,用于与其它设备进行信息交互。同时,该硬件加速资源调度装置还包括总线44,处理器42、通信接口43、以及存储器41通过总线44完成相互间的通信。
58.存储器31可以包含高速ram(random access memory,随机存取存储器),也可还包括nvm(non-volatile memory,非易失性存储器)。例如至少一个磁盘存储器。存储器41也可以是存储器阵列。存储器41还可能被分块,并且块可按一定的规则组合成虚拟卷。
59.此外,处理器42可以是一个中央处理器,或者可以是asic(application specific integrated circuit,专用集成电路),或者是被配置成实施本公开实施例的一个或多个集成电路。
60.本公开还提供一种计算机可读存储介质。计算机可读存储介质存储有计算机指令,指令被处理器执行时实现如图1或图2中任一实施例涉及的方法。
61.在一些实施例中,上述功能模块可以实现为用于执行本公开所描述功能的通用处理器、可编程逻辑控制器(programmable logic controller,简称:plc)、数字信号处理器(digital signal processor,简称:dsp)、专用集成电路(application specific integrated circuit,简称:asic)、现场可编程门阵列(field-programmable gate array,简称:fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件或者其任意适当组合。
62.至此,已经详细描述了本公开的实施例。为了避免遮蔽本公开的构思,没有描述本领域所公知的一些细节。本领域技术人员根据上面的描述,完全可以明白如何实施这里公开的技术方案。
63.虽然已经通过示例对本公开的一些特定实施例进行了详细说明,但是本领域的技术人员应该理解,以上示例仅是为了进行说明,而不是为了限制本公开的范围。本领域的技术人员应该理解,可在不脱离本公开的范围和精神的情况下,对以上实施例进行修改或者对部分技术特征进行等同替换。本公开的范围由所附权利要求来限定。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献