图形处理器中的任务处理方法、装置、电子设备及存储介质制造方法及图纸

技术编号:29677722 阅读:13 留言:0更新日期:2021-08-13 22:00
本申请涉及计算机技术领域,具体公开了一种图形处理器中的任务处理方法、装置、电子设备及存储介质,该方法应用于内核态中的虚拟驱动,包括:接收用户态进程发起的任务处理请求;响应于任务处理请求,获取各物理图形处理器的负载信息;根据各物理图形处理的负载信息,为任务处理请求分配第一物理图形处理器;根据基础数据的虚拟地址,获取基础数据并将基础数据拷贝至第一物理图形处理器;调用第一物理图形处理器中的驱动,以在第一物理图形处理器中基于基础数据执行任务处理请求所指示的处理任务。本方案可以有效调度和利用多个物理图形处理器的处理资源。

【技术实现步骤摘要】
图形处理器中的任务处理方法、装置、电子设备及存储介质
本申请涉及计算机
,更具体地,涉及一种图形处理器中的任务处理方法、装置、电子设备及存储介质。
技术介绍
游戏应用中游戏画面的渲染和视频流编码是在图形处理器中实现的,随着对游戏画面的画质和分辨率等提出更高的要求,需要提高图形处理器中任务的处理效率。因此,如何提高图形处理器中任务的处理效率是现有技术中亟待解决的技术问题。
技术实现思路
鉴于上述问题,本申请实施例提出了一种图形处理器中的任务处理方法、装置、电子设备及存储介质,以提高图形处理器中的任务处理效率。根据本申请实施例的一个方面,提供了图形处理器中的任务处理方法,应用于内核态中的虚拟驱动,所述方法包括:接收用户态进程发起的任务处理请求;所述任务处理请求包括所请求处理的基础数据的虚拟地址;所述虚拟地址是将各物理图形处理器的内存地址进行虚拟化得到的;响应于所述任务处理请求,获取所述各物理图形处理器的负载信息;根据所述各物理图形处理的负载信息,为所述任务处理请求分配第一物理图形处理器;根据所述基础数据的虚拟地址,获取所述基础数据并将所述基础数据拷贝至所述第一物理图形处理器;调用所述第一物理图形处理器中的驱动,以在所述第一物理图形处理器中基于所述基础数据执行所述任务处理请求所指示的处理任务。根据本申请实施例的一个方面,提供了一种图形处理器中的任务处理装置,应用于内核态中的虚拟驱动,所述装置包括:接收模块,用于接收用户态进程发起的任务处理请求;所述任务处理请求包括所请求处理的基础数据的虚拟地址;所述虚拟地址是将各物理图形处理器的内存地址进行虚拟化得到的;负载信息获取模块,用于响应于所述任务处理请求,获取所述各物理图形处理器的负载信息;分配模块,用于根据所述各物理图形处理的负载信息,为所述任务处理请求分配第一物理图形处理器;拷贝模块,用于根据所述基础数据的虚拟地址,获取所述基础数据并将所述基础数据拷贝至所述第一物理图形处理器;调用模块,用于调用所述第一物理图形处理器中的驱动,以在所述第一物理图形处理器中基于所述基础数据执行所述任务处理请求所指示的处理任务。在本申请的一些实施例中,基于前述方案,拷贝模块包括:第一物理内存地址确定单元,用于根据虚拟地址与物理内存地址之间的映射关系,确定所述基础数据的虚拟地址对应的第一物理内存地址;基础数据获取单元,用于根据所述第一物理内存地址从对应的物理图形处理器中获取所述基础数据;拷贝单元,用于根据在所述第一物理图形处理器中为所述基础数据分配的第二物理内存地址,将所获取到的所述基础数据拷贝到所述第一物理图形处理器中。在本申请的一些实施例中,基于前述方案,图形处理器中的任务处理装置还包括:第一内存申请模块,用于在所述第一物理图形处理器上进行内存申请,获得所述处理任务所对应计算结果的第三物理内存地址,以在执行所述任务处理请求所指示的处理任务过程中按照所述第三物理内存地址进行所对应计算结果的存储;计算结果获取模块,用于根据所述第三物理内存地址,从所述第一物理图形处理器中获取所述任务处理请求对应的计算结果;计算结果拷贝模块,用于将所获取到的所述计算结果拷贝到所述计算结果所对应虚拟地址指示的位置处,以使所述用户态进程根据所述计算结果所对应虚拟地址获取对应的计算结果。在本申请的一些实施例中,基于前述方案,所述第三物理内存地址所指示的第一内存量与第二内存量相等,所述第二内存量是所述任务处理请求所对应计算结果的虚拟地址所指示的内存量;图形处理器中的任务处理装置还包括:第二内存申请模块,用于为所述任务处理请求所对应计算结果进行图形处理器内存申请,获得为所述任务处理请求所对应计算结果分配的虚拟地址。在本申请的一些实施例中,基于前述方案,图形处理器中的任务处理装置还包括:内存申请请求接收模块,用于接收所述用户态进程发送的内存申请请求;虚拟地址分配模块,用于根据所述内存申请请求所请求申请的内存量和所述各物理图形处理器的存储状态信息,为所述用户态进程分配所述基础数据的虚拟地址;虚拟地址返回模块,用于向所述用户态进程返回所述基础数据的虚拟地址。在本申请的一些实施例中,基于前述方案,所述任务处理请求包括所要调用的接口的接口标识;所述任务处理请求是通过用户态中的预设图形库转发至所述虚拟驱动的;调用模块进一步被配置为:调用所述第一物理图形处理器中的驱动,以在所述第一物理图形处理器中根据所述接口标识调用对应的接口,由所调用的接口根据所述基础数据执行所述任务处理请求所指示的处理任务。在本申请的一些实施例中,基于前述方案,所述处理任务包括渲染任务,所述负载信息包括物理图形处理器中渲染管线的占用信息;分配模块进一步被配置为:根据各物理图形器中渲染管线的占用信息,确定渲染管线可用于所述任务处理请求所指示渲染任务的第一物理图形处理器。在本申请的一些实施例中,基于前述方案,所述处理任务包括视频编码任务;所述负载信息包括物理图形处理器中视频编码器的占用信息;分配模块进一步被配置为:根据各物理图形器中视频编码器的占用信息,确定视频编码器可用于所述任务处理请求所指示视频编码任务的目标图形处理器。在本申请的一些实施例中,基于前述方案,图形处理器中的任务处理装置还包括:第一接收模块,用于接收用户态进程发起的下一次任务处理请求;确定模块,用于若所述下一次任务处理请求对应的基础数据包括所述任务处理请求对应的计算结果,且所述第一物理图形处理器中的剩余处理资源满足所述下一次任务处理请求所请求的处理资源,则确定在所述第一物理图形处理器上执行所述下一次任务处理请求。在本申请的另一些实施例中,基于前述方案,图形处理器中的任务处理装置还包括:第二接收模块,用于接收用户态进程发起的下一次任务处理请求;第二分配模块,用于根据各物理图形处理器的负载信息,分配满足所述下一次任务处理请求所请求处理资源的第二物理图形处理器,所述第二物理图形处理器不同于所述第一物理图形处理器;第二拷贝模块,用于若所述下一次任务处理请求对应的基础数据包括所述任务处理请求对应的计算结果,则根据在所述第二物理图形处理器上为所述下一次任务处理请求对应的基础数据所分配的第四物理内存地址,将所述任务处理请求对应的计算结果拷贝至所述第二物理图形处理器。根据本申请实施例的一个方面,提供了一种电子设备,包括:处理器;存储器,所述存储器上存储有计算机可读指令,所述计算机可读指令被所述处理器执行时,实现如上所述图形处理器中的任务处理方法。根据本申请实施例的一个方面,提供了一种计算机可读存储介质,其上存储有计算机可读指令,当所述计算机可读指令被处理器执行时,实现如上所述图形处理器中的任务处理方法。在本申请的方案中,通过内核态中的虚拟驱动将用户态进程与物理图形处理器中的驱动相隔离开,由内核态中的虚拟驱动将用户态进程发起的任务处理请求进行转发,实现了在内核态中进行多个物理图形处理器的调度,可以有效利用多个物理图形处理器中的处理资源,相较于单图形处理器中的任务处理,本方案可以有效提高任务处理的效率;而且本方案实现了多个物本文档来自技高网...

【技术保护点】
1.一种图形处理器中的任务处理方法,其特征在于,应用于内核态中的虚拟驱动,所述方法包括:/n接收用户态进程发起的任务处理请求;所述任务处理请求包括所请求处理的基础数据的虚拟地址;所述虚拟地址是将各物理图形处理器的内存地址进行虚拟化得到的;/n响应于所述任务处理请求,获取所述各物理图形处理器的负载信息;/n根据所述各物理图形处理的负载信息,为所述任务处理请求分配第一物理图形处理器;/n根据所述基础数据的虚拟地址,获取所述基础数据并将所述基础数据拷贝至所述第一物理图形处理器;/n调用所述第一物理图形处理器中的驱动,以在所述第一物理图形处理器中基于所述基础数据执行所述任务处理请求所指示的处理任务。/n

【技术特征摘要】
1.一种图形处理器中的任务处理方法,其特征在于,应用于内核态中的虚拟驱动,所述方法包括:
接收用户态进程发起的任务处理请求;所述任务处理请求包括所请求处理的基础数据的虚拟地址;所述虚拟地址是将各物理图形处理器的内存地址进行虚拟化得到的;
响应于所述任务处理请求,获取所述各物理图形处理器的负载信息;
根据所述各物理图形处理的负载信息,为所述任务处理请求分配第一物理图形处理器;
根据所述基础数据的虚拟地址,获取所述基础数据并将所述基础数据拷贝至所述第一物理图形处理器;
调用所述第一物理图形处理器中的驱动,以在所述第一物理图形处理器中基于所述基础数据执行所述任务处理请求所指示的处理任务。


2.根据权利要求1所述的方法,其特征在于,所述根据所述基础数据的虚拟地址,获取所述基础数据并将所述基础数据拷贝至所述第一物理图形处理器,包括:
根据虚拟地址与物理内存地址之间的映射关系,确定所述基础数据的虚拟地址对应的第一物理内存地址;
根据所述第一物理内存地址从对应的物理图形处理器中获取所述基础数据;
根据在所述第一物理图形处理器中为所述基础数据分配的第二物理内存地址,将所获取到的所述基础数据拷贝到所述第一物理图形处理器中。


3.根据权利要求1所述的方法,其特征在于,所述调用所述第一物理图形处理器中的驱动,以在所述第一物理图形处理器中基于所述基础数据执行所述任务处理请求所指示的处理任务之前,所述方法还包括:
在所述第一物理图形处理器上进行内存申请,获得所述处理任务所对应计算结果的第三物理内存地址,以在执行所述任务处理请求所指示的处理任务过程中按照所述第三物理内存地址进行所对应计算结果的存储;
所述调用所述第一物理图形处理器中的驱动,以在所述第一物理图形处理器中基于所述基础数据执行所述任务处理请求所指示的处理任务之后,所述方法还包括:
根据所述第三物理内存地址,从所述第一物理图形处理器中获取所述任务处理请求对应的计算结果;
将所获取到的所述计算结果拷贝到所述计算结果所对应虚拟地址指示的位置处,以使所述用户态进程根据所述计算结果所对应虚拟地址获取对应的计算结果。


4.根据权利要求3所述的方法,其特征在于,所述第三物理内存地址所指示的第一内存量与第二内存量相等,所述第二内存量是所述任务处理请求所对应计算结果的虚拟地址所指示的内存量;
所述在所述第一物理图形处理器上进行内存申请,获得所述处理任务所对应计算结果的第三物理内存地址之前,所述方法还包括:
为所述任务处理请求所对应计算结果进行图形处理器内存申请,获得为所述任务处理请求所对应计算结果分配的虚拟地址。


5.根据权利要求1所述的方法,其特征在于,所述接收用户态进程发起的任务处理请求之前,所述方法还包括:
接收所述用户态进程发送的内存申请请求;
根据所述内存申请请求所请求申请的内存量和所述各物理图形处理器的存储状态信息,为所述用户态进程分配所述基础数据的虚拟地址;
向所述用户态进程返回所述基础数据的虚拟地址。


6.根据权利要求1所述的方法,其特征在于,所述任务处理请求包括所要调用的接口的接口标识;所述任务处理请求是通过用户态中的预设图形库转发至所述虚拟驱动的;
所述调用所述第一物理图形处理器中的驱动,以在所述第一物理图形处理器中基于所述基础数据执行所述任务处理请求所指示的处理任务,包括:
调用所述第一物理图形处理器中的驱动,以在所述第一物理图形处理器中根据所述...

【专利技术属性】
技术研发人员:张富春
申请(专利权)人:腾讯科技深圳有限公司
类型:发明
国别省市:广东;44

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

1