System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本专利技术涉及资源调度,特别涉及一种gpgpu调度方法、装置、设备及介质。
技术介绍
1、gpgpu(general-purpose computing on graphics processing units,通用计算图形处理器)是一种强大的计算工具,与gpu不同的是,gpgpu的计算内核并行度更高,更擅长一些非图形相关程序的运算,重复性的有海量数据的任务。如大规模数据加密、解密、数据计算、ai计算加速等。
2、随着当前科技水平飞速攀升,gpgpu的应用需求显著攀升。目前通常支持的是多个客户端共享gpgpu的应用模式,该设计支持若干个用户以网络的形式远端调用一个异构gpgpu执行计算,可以减少gpgpu应用数量,在不影响计算需求的前提下最大限度提升gpgpu应用效率,提升经济性。在gpgpu中,计算单元是其计算核心,用户的计算任务通常由多个计算单元协同完成。单个gpgpu内部通常会部署数十组计算单元,为所有用户提供计算服务。
3、然而,由于gpgpu的计算单元数量有限,在面对多用户瞬时并发调用gpgpu时,往往会因为计算单元被其他用户占用而造成重要用户的重要进程的延迟过高,严重影响用户体验。并且,传统的gpgpu调度模块通常采用单一机械的cta(compute thread array,计算线程阵列)调度算法,即通过轮询的方法查看计算单元空闲状态,并完成任务cta块到计算单元的调度,但这一方法不适用于并发计算任务的精准调度,无法适配多用户多需求对于gpgpu的灵活应用,同样严重影响用户体验。此外,传统的
4、综上,如何提高gpgpu调用计算单元处理多用户计算任务的调度效率,并提高用户体验是目前有待解决的问题。
技术实现思路
1、有鉴于此,本专利技术的目的在于提供一种gpgpu调度方法、装置、设备及介质,能够提高gpgpu调用计算单元处理多用户计算任务的调度效率,并提高用户体验。其具体方案如下:
2、第一方面,本申请公开了一种gpgpu调度方法,应用于gpgpu中的目标调度器,所述方法包括:
3、获取待处理的若干目标指令;所述目标指令为目标主机基于risc-v指令集对用户终端发送的gpgpu访问请求进行拆分后得到的基于计算线程阵列的指令;
4、基于所述用户终端的标识信息确定用户访问权限,以基于所述用户访问权限确定出用于执行所述目标指令的计算任务的计算单元组;
5、基于所述目标指令的总数量、各所述目标指令的数据量和所述计算单元组,利用预设调度算法为每一所述目标指令分配gpgpu中对应的目标计算单元;
6、将各所述目标指令通过预设总线发送至对应的目标计算单元,以便各所述目标计算单元在执行与所述目标指令对应的处理操作后,将处理结果返回至所述目标主机,并通过所述目标主机将各所述处理结果进行合并后返回至所述用户终端。
7、可选的,所述目标调度器通过预设内部通道与安全验证单元连接;
8、相应的,所述获取待处理的若干目标指令,包括:
9、通过所述安全验证单元在获取到所述目标指令后对所述用户终端的身份进行合法性验证;
10、若所述用户终端的身份验证通过,则获取所述安全验证单元通过所述预设内部通道发送的待处理的若干所述目标指令。
11、可选的,所述目标调度器中设置有用户权限记录表,所述用户权限记录表用于记录不同用户允许调度的计算单元信息,所述计算单元信息包括计算单元标识和计算单元数量;
12、相应的,所述基于所述用户终端的标识信息确定用户访问权限,包括:
13、对所述用户终端的ip地址进行哈希计算得到哈希结果,并根据所述哈希结果确定与所述用户终端对应的权限存储地址;
14、从所述用户权限记录表中读取所述权限存储地址中存储的计算单元信息,以得到用户访问权限。
15、可选的,所述基于所述目标指令的总数量、各所述目标指令的数据量和所述计算单元组,利用预设调度算法为每一所述目标指令分配gpgpu中对应的目标计算单元之后,还包括:
16、从所述用户权限记录表中读取所述权限存储地址中存储的计算单元信息,以得到用户访问权限,并基于所述用户访问权限对各所述目标指令分配的目标计算单元进行验证;
17、若验证通过,则允许执行所述将各所述目标指令通过预设总线发送至对应的目标计算单元的步骤。
18、可选的,通过目标主机基于risc-v指令集对用户终端发送的gpgpu访问请求进行拆分后得到基于计算线程阵列的目标指令,包括:
19、通过目标主机基于risc-v指令集对用户终端发送的gpgpu访问请求进行拆分得到若干个任务执行内核,并基于任务复杂度将每一所述任务执行内核拆分为若干个基于计算线程阵列的目标指令;
20、相应的,所述通过所述目标主机将各所述处理结果进行合并后返回至所述用户终端,包括:
21、通过所述目标主机将与每一所述任务执行内核对应的各所述处理结果进行合并处理,并将合并结果返回至所述用户终端。
22、可选的,所述gpgpu调度方法,还包括:
23、基于各所述目标指令的数据量预测每一所述目标指令的处理时间;
24、相应的,所述基于所述目标指令的总数量、各所述目标指令的数据量和所述计算单元组,利用预设调度算法为每一所述目标指令分配gpgpu中对应的目标计算单元,包括:
25、确定当前处于工作状态的计算单元的第一标识信息,并确定所述计算单元组中的各计算单元的第二标识信息,以基于所述第一标识信息和所述第二标识信息判断所述计算单元组是否存在调用冲突;
26、若存在调用冲突,则基于当前处于工作状态的计算单元、所述计算单元组和计算单元负载建立三方演化博弈模型,并以总处理时间最短为目标,计算得到所述三方演化博弈模型的均衡点,以基于所述均衡点调用递归算法为每一所述目标指令分配gpgpu中对应的目标计算单元。
27、可选的,所述基于所述第一标识信息和所述第二标识信息判断所述计算单元组是否存在调用冲突之后,还包括:
28、若不存在调用冲突,则判断所述计算单元组中的计算单元数量是否小于所述目标指令的总数量;
29、若所述计算单元组中的计算单元数量不小于所述目标指令的总数量,则基于轮询调度算法依次轮询所述计算单元组的各计算单元的运行状态,以为每一所述目标指令分配gpgpu中对应的目标计算单元;
30、若所述计算单元组中的计算单元数量小于所述目标指令的总数量,则以总处理时间最短为目标,并基于每一所述目标指令的处理时间调用最短时间优先算法为每一所述目标指令分配gpgpu中对应的目标计算单元。
31、第二方面,本申请公开了一种gpgpu调度装置,应用于gpgpu中的目标调度器,所述装置包括:
本文档来自技高网...
【技术保护点】
1.一种GPGPU调度方法,其特征在于,应用于GPGPU中的目标调度器,所述方法包括:
2.根据权利要求1所述的GPGPU调度方法,其特征在于,所述目标调度器通过预设内部通道与安全验证单元连接;
3.根据权利要求1所述的GPGPU调度方法,其特征在于,所述目标调度器中设置有用户权限记录表,所述用户权限记录表用于记录不同用户允许调度的计算单元信息,所述计算单元信息包括计算单元标识和计算单元数量;
4.根据权利要求3所述的GPGPU调度方法,其特征在于,所述基于所述目标指令的总数量、各所述目标指令的数据量和所述计算单元组,利用预设调度算法为每一所述目标指令分配GPGPU中对应的目标计算单元之后,还包括:
5.根据权利要求1所述的GPGPU调度方法,其特征在于,通过目标主机基于RISC-V指令集对用户终端发送的GPGPU访问请求进行拆分后得到基于计算线程阵列的目标指令,包括:
6.根据权利要求1至5任一项所述的GPGPU调度方法,其特征在于,还包括:
7.根据权利要求6所述的GPGPU调度方法,其特征在于,所述基于
8.一种GPGPU调度装置,其特征在于,应用于GPGPU中的目标调度器,所述装置包括:
9.一种电子设备,其特征在于,包括:
10.一种计算机可读存储介质,其特征在于,用于存储计算机程序;其中,所述计算机程序被处理器执行时实现如权利要求1至7任一项所述的GPGPU调度方法的步骤。
...【技术特征摘要】
1.一种gpgpu调度方法,其特征在于,应用于gpgpu中的目标调度器,所述方法包括:
2.根据权利要求1所述的gpgpu调度方法,其特征在于,所述目标调度器通过预设内部通道与安全验证单元连接;
3.根据权利要求1所述的gpgpu调度方法,其特征在于,所述目标调度器中设置有用户权限记录表,所述用户权限记录表用于记录不同用户允许调度的计算单元信息,所述计算单元信息包括计算单元标识和计算单元数量;
4.根据权利要求3所述的gpgpu调度方法,其特征在于,所述基于所述目标指令的总数量、各所述目标指令的数据量和所述计算单元组,利用预设调度算法为每一所述目标指令分配gpgpu中对应的目标计算单元之后,还包括:
5.根据权利要求1所述的gpgpu调度方法...
【专利技术属性】
技术研发人员:王雄儒,刘兆伟,于帆,王帅,赵鑫鑫,姜凯,高晨,
申请(专利权)人:山东浪潮科学研究院有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。