一种计算资源的提供方法、系统、电子设备及存储介质技术方案

技术编号:39004614 阅读:13 留言:0更新日期:2023-10-07 10:36
本说明书实施方式提供了一种计算资源的提供方法、系统、电子设备及存储介质,计算资源的提供系统通过半虚拟化技术实现计算请求在虚拟算力设备中的接收与传输,使得计算请求可以通过运行于用户态的虚拟前端单元基于共享内存传输给挂载虚拟计算资源的虚拟后端单元,从而使计算请求无需在用户态和内核态之间进行数据拷贝。如此,可以大大减少数据拷贝的次数,提高数据传输的效率,减少在提供计算资源时的性能损耗。此外,计算资源的提供系统将虚拟后端单元与虚拟前端单元分离,可以将数据接收、转发、网络通信等功能集成于虚拟后端单元,通过向用户提供SDK的方式,将数据接收、转发、网络通信隐藏起来,尽量减少对用户容器的侵入。入。入。

【技术实现步骤摘要】
一种计算资源的提供方法、系统、电子设备及存储介质


[0001]本说明书中实施方式关于计算机应用
,具体地说,涉及计算机应用
下的算力池化技术,更具体地说,涉及一种计算资源的提供方法、系统、电子设备及存储介质。

技术介绍

[0002]随着人工智能不断发展,从人脸识别、智能语音,到自动驾驶、工业智能,越来越多的场景通过深度结合人工智能技术,提升了产品的竞争力,形成了智能应用产品。目前,智能应用产品大多需要依靠云平台提供的计算资源进行计算任务的运算,满足各类应用需求。
[0003]随着云平台用户的增多,降低云平台在提供计算资源时的性能损耗具有重要意义。

技术实现思路

[0004]本说明书中多个实施方式提供一种计算资源的提供方法、系统、电子设备及存储介质,以实现降低提供计算资源时的性能损耗的目的。
[0005]本说明书的一个实施方式提供一种计算资源的提供方法,包括:
[0006]响应于计算请求,将所述计算请求发送给虚拟算力设备,所述虚拟算力设备包括用户模块,所述用户模块包括均运行于用户态的虚拟前端单元和虚拟后端单元;所述虚拟前端单元用于接收所述计算请求,并基于半虚拟化协议将所述计算请求保存至共享内存中;所述虚拟后端单元,用于挂载虚拟计算资源,基于所述半虚拟化协议从所述共享内存中接收所述计算请求,并将所述计算请求发送给所述虚拟计算资源;所述计算请求,用于请求所述虚拟计算资源执行计算任务;所述虚拟计算资源包括算力和显存中的至少一项;
[0007]接收所述虚拟算力设备返回的计算结果。
[0008]本说明书的一个实施方式提供一种计算资源的提供系统,包括:管控模块和数据模块;其中,
[0009]所述管控模块,用于响应于计算请求,将所述计算请求发送给虚拟算力设备,接收所述虚拟算力设备返回的计算结果;
[0010]所述数据模块,用于建立所述虚拟算力设备;所述虚拟算力设备包括用户模块,所述用户模块包括均运行于用户态的虚拟前端单元和虚拟后端单元;所述虚拟前端单元用于接收所述计算请求,并基于半虚拟化协议将所述计算请求保存至共享内存中;所述虚拟后端单元,用于挂载虚拟计算资源,基于所述半虚拟化协议从所述共享内存中接收所述计算请求,并将所述计算请求发送给所述虚拟计算资源;所述计算请求,用于请求所述虚拟计算资源执行计算任务;所述虚拟计算资源包括算力和显存中的至少一项。
[0011]第三方面,本说明书实施例提供了一种电子设备,包括:处理器和存储器;
[0012]其中,所述存储器与所述处理器连接,所述存储器用于存储计算机程序;
[0013]所述处理器,用于通过运行所述存储器中存储的计算机程序,实现如上述计算资源的提供方法。
[0014]第四方面,本说明书实施例提供了一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器运行时,实现如上述的计算资源的提供方法。
[0015]第五方面,本说明书实施例提供了一种计算机程序产品或计算机程序,所述计算机程序产品包括计算机程序,所述计算机程序存储在计算机可读存储介质中;所述计算机设备的处理器从所述计算机可读存储介质读取所述计算机程序,所述处理器执行所述计算机程序时实现上述的计算资源的提供方法的步骤。
[0016]本说明书提供的多个实施方式,通过半虚拟化技术实现计算请求在虚拟算力设备中的接收与传输,使得计算请求可以通过运行于用户态的虚拟前端单元基于共享内存传输给挂载虚拟计算资源的虚拟后端单元,从而使计算请求无需在用户态和内核态之间进行数据拷贝。如此,可以大大减少数据拷贝的次数,提高数据传输的效率,减少在提供计算资源时的性能损耗。
附图说明
[0017]图1为本说明书的一个实施方式提供的计算资源的提供方法的应用场景示意图;
[0018]图2为本说明书的一个实施方式提供的一种云平台的系统架构示意图;
[0019]图3为本说明书的一个实施方式提供的一种计算资源的提供系统的结构示意图;
[0020]图4为本说明书的一个实施方式提供的一种计算资源的提供系统的异构架构示意图;
[0021]图5为本说明书的一个实施方式提供的一种虚拟算力设备的多线程架构示意图;
[0022]图6为本说明书的一个实施方式提供的一种虚拟算力设备的具体实现架构示意图;
[0023]图7为本说明书的一个实施方式提供的一种计算资源的提供方法的流程示意图;
[0024]图8为本说明书的一个实施方式提供的一种电子设备的结构示意图。
具体实施方式
[0025]除非另外定义,本说明书实施例使用的技术术语或者科学术语应当为本说明书所属领域内具有一般技能的人士所理解的通常意义。本说明书实施例使用的“第一”、“第二”以及类似的词语并不表示任何顺序、数量或者重要性,而只是用来避免构成要素的混同而设置的。
[0026]除非上下文另有要求,否则,在整个说明书中,“多个”表示“至少两个”,“包括”被解释为开放、包含的意思,即为“包含,但不限于”。在说明书的描述中,术语“一个实施例”、“一些实施例”、“示例性实施例”、“示例”、“特定示例”或“一些示例”等旨在表明与该实施例或示例相关的特定特征、结构、材料或特性包括在本说明书的至少一个实施例或示例中。上述术语的示意性表示不一定是指同一实施例或示例。
[0027]下面将结合本说明书实施例中的附图,对本说明书实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本说明书一部分实施例,而不是全部的实施
例。基于本说明书中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本说明书保护的范围。
[0028]概述
[0029]如
技术介绍
中所述,为了支持各类应用对于计算资源的需求。各云平台厂商通过虚拟化技术和池化技术实现了将实体的计算芯片虚拟为虚拟计算资源提供给用户使用的目的。其中,基于虚拟化技术,可以实现多个应用共享硬件。例如以GPU为例,通过将物理GPU分割成多个虚拟GPU,每个虚拟GPU都可以分配给一个虚拟机或容器。每个虚拟GPU都可以有一个自己的虚拟驱动程序,负责虚拟化GPU硬件并将虚拟化后的命令发送给物理GPU。通过算力的虚拟化可以实现多个应用共享硬件的目的。
[0030]基于池化技术,可以将整个计算资源汇集成一个集合,管理和分配整个集合的计算存储资源。通过算力池化技术,可以有效地减少计算资源的浪费,自动管理和调度资源,根据所需计算量快速动态地调整资源的规模和分配方式,并在整个集合中共享计算资源。算力池化可以在海量数据处理、分布式计算和高并发信息系统等方面发挥作用,为用户提供低成本、高效率、高度可扩展的计算能力。通过池化技术可以通过拉远方式访问硬件从而解除单机限制,此外,池化技术通过算力设备的方式将硬件的能力抽象为算力指标,同时提供统一的接口实现不同计算芯片硬件生态的屏蔽,从而减少适配的难度,提升易用性。
[0031]目前本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种计算资源的提供方法,其特征在于,包括:响应于计算请求,将所述计算请求发送给虚拟算力设备,所述虚拟算力设备包括用户模块,所述用户模块包括均运行于用户态的虚拟前端单元和虚拟后端单元;所述虚拟前端单元用于接收所述计算请求,并基于半虚拟化协议将所述计算请求保存至共享内存中;所述虚拟后端单元,用于挂载虚拟计算资源,基于所述半虚拟化协议从所述共享内存中接收所述计算请求,并将所述计算请求发送给所述虚拟计算资源;所述计算请求,用于请求所述虚拟计算资源执行计算任务;所述虚拟计算资源包括算力和显存中的至少一项;接收所述虚拟算力设备返回的计算结果。2.根据权利要求1所述的方法,其特征在于,所述计算请求包括回调函数;所述回调函数用于在所述计算任务完毕后,将所述计算结果返回给所述计算请求的请求方;所述响应于计算请求,将所述计算请求发送给虚拟算力设备包括:响应于计算请求,向所述计算请求的请求方返回响应参数;所述响应参数用于描述所述计算请求的响应是否正常;将携带有所述回调函数的计算请求发送给所述虚拟算力设备,以使所述虚拟算力设备在所述计算任务完毕后,通过调用所述回调函数将所述计算结果返回给所述计算请求的请求方。3.根据权利要求1所述的方法,其特征在于,所述虚拟后端单元,还用于接收所述目标计算资源执行所述计算任务返回的计算结果,并将所述计算结果保存至所述共享内存;所述虚拟前端单元,还用于从所述共享内存中读取所述计算结果;所述接收所述虚拟算力设备返回的计算结果包括:接收所述虚拟前端单元从所述共享内存中读取的所述计算结果。4.根据权利要求1所述的方法,其特征在于,还包括:响应于携带有配置信息的设备创建请求,确定目标节点;所述配置信息包括所述虚拟算力设备的运行模式;根据所述配置信息,在所述目标节点创建所述虚拟算力设备。5.根据权利要求4所述的方法,其特征在于,所述运行模式包括本地模式或拉远模式;在所述运行模式包括所述拉远模式时,所述虚拟算力设备还包括网络接收单元;所述响应于携带有配置信息的设备创建请求,确定目标节点包括:若所述运行模式包括本地模式,确定包括计算芯片的计算节点作为所述目标节点;所述计算芯片用于提供所述虚拟计算资源;若所述运行模式包括拉远模式,确定计算节点和异构资源节点作为所述目标节点,所述计算节点和所述异构资源节点为不同的节点;所述异构资源节点包括所述计算芯片;所述根据所述配置信息,在所述目标节点创建所述虚拟算力设备包括:若所述运行模式包括本地模式,根据所述配置信息在计算节点创建所述虚拟前端单元和所述虚拟后端单元,所述虚拟后端单元用于挂载所述计算节点上的虚拟计算资源;若所述运行模式包括拉远模式,根据所述配置信息在所述计算节点创建所述虚拟前端单元和所述虚拟后端单元,在所述异构资源节点创建网络接收单元,所述虚拟后端单元通过所述网络接收单元挂载所述异构资源节点上的虚拟计算资源。6.根据权利要求4所述的方法,其特征在于,若所述运行模式包括固定算力模式,所述
配置信息还包括需求信息,所述需求信息包括需求算力值和需求显存值中的至少一项,所述根据所述配置信息,在所述目标节点创建所述虚拟算力设备包括:根据所述需求信息,创建所述虚拟算力设备,并将与所述需求信息对应点的虚拟计算资源挂载于所述虚拟后端单元。7.一种计算资源的提供系统,其特征在于,包括:管控模块和数据模块;其中,所述管控模块,用于响应于计算请求,将所述计算请求发送给虚拟算力设备,接收所述虚拟算力设备返回的计算结果;所述数据模块,用于建立所述虚拟算力设备;所述虚拟算力设备包括用户模块,所述用户模块包括均运行于用户态的虚拟前端单元和虚拟后端单元;所述虚拟前端单元用于接收所述计算请求,并基于半虚拟化协议将所述计算请求保存至共享内存中;所述虚拟后端单元,用于挂载虚拟计算资源,基于所述半虚拟化协议从所述共享内存中接收所述计算请求,并将所述计算请求发送给所述...

【专利技术属性】
技术研发人员:方康华李继平
申请(专利权)人:杭州阿里巴巴飞天信息技术有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1