资源管理方法、系统级芯片、电子组件及电子设备与流程

文档序号:33745031发布日期:2023-04-06 11:15阅读:65来源:国知局
资源管理方法、系统级芯片、电子组件及电子设备与流程

本公开涉及gpu(graphics processing unit,图形处理器)虚拟化,尤其涉及一种资源管理方法、系统级芯片(system on chip,soc)、电子组件及电子设备。


背景技术:

1、gpu虚拟化技术可广泛应用于各种应用,例如桌面虚拟化、云游戏和计算科学等,可分为软件虚拟化和硬件虚拟化。在传统的硬件虚拟化技术中,soc内的gpu硬件(即物理gpu核)可虚拟化出多个虚拟gpu核(vgpu core),主机(例如cpu(central processingunit,中央处理器))可将运行在其上的各个vm(virtual machine,虚拟机)的命令发送到对应的vgpucore来访问vgpu core中的寄存器,各个vgpu core也可为对应的vm提供具有虚拟内存范围的上下文。上下文是指gpu运行过程中,主机发送命令给gpu core后,gpucore执行相应操作的状态。

2、然而,受限于gpu硬件构架出厂时所设置的对应关系,vgpu core仅能基于原有对应关系与对应的vm进行交互。即使在后续该对应的vm下线,与之对应的vgpu core也无法被其他vm所使用,或即使在后续有新的vm上线,该新的vm也无法使用原有物理gpu核资源或vgpu core资源,存在使用不灵活的问题。


技术实现思路

1、本公开的目的是提供一种资源管理方法、系统级芯片、电子组件及电子设备,可提升soc中gpu资源的使用灵活性。

2、根据本公开的一个方面,提供一种soc,包括物理gpu核、用于与片外的主机通信的地址映射模块以及与所述物理gpu核一一对应连接的标识映射模块;所述地址映射模块,被配置为:根据当前的地址映射表,将运行于所述主机上的虚拟机发起的第一访问请求转发至所述虚拟机可访问的寄存器所属的目标gpu核;所述目标gpu核是所述寄存器所在的物理gpu核或是所述寄存器所在的虚拟gpu核,所述虚拟gpu核由所述寄存器所在的物理gpu核虚拟化出;所述标识映射模块,被配置为:根据当前的标识映射表及所述目标gpu核响应所述第一访问请求后生成的中断信息,向所述目标gpu核反馈可通信的目标虚拟机的目标虚拟机标识;所述目标gpu核,被配置为:根据所述目标虚拟机标识,向所述目标虚拟机发送所述中断信息;所述地址映射表与所述标识映射表可由软件进行配置更改,且所述标识映射表与所述地址映射表的映射内容互逆。

3、本公开一种可行的实现方式中,所述第一访问请求携带所述虚拟机的虚拟机标识及待访问地址;所述地址映射模块,具体被配置为:从当前的所述地址映射表中查找与所述虚拟机标识对应的目标地址映射表,并根据所述目标地址映射表将所述第一访问请求携带的所述待访问地址映射成所述可访问的寄存器的地址,并将所述第一访问请求转发至所述可访问的寄存器的地址所属的所述目标gpu核。

4、本公开一种可行的实现方式中,所述中断信息携带所述目标gpu核的gpu标识;所述标识映射模块,被配置为:根据当前的所述标识映射表将所述中断信息携带的所述gpu标识映射成所述目标虚拟机标识,并将所述目标虚拟机标识反馈至所述目标gpu核。

5、本公开一种可行的实现方式中,所述中断信息携带虚拟地址,所述虚拟地址由所述目标gpu核内的驱动生成所述中断信息时生成,所述soc还包括片内内存,且在所述片内内存中保存有与各个虚拟机的虚拟机标识一一对应的页表;

6、所述目标gpu核,被配置为:接收所述目标虚拟机标识,并访问所述片内内存中与所述目标虚拟机标识对应的目标页表,根据所述目标页表将所述中断信息携带的所述虚拟地址映射为所述目标虚拟机的地址,并将所述中断信息发送至所述目标虚拟机的地址。

7、本公开一种可行的实现方式中,在当前的所述地址映射表存在更新的情况下,第一目标gpu核,被配置为:接收第一虚拟机发送的更新指令,在所述第一目标gpu核检测到自身当前存在未执行完的第一任务时,响应所述更新指令,根据所述第一目标gpu核的上下文保存能力,执行对应的第一任务执行策略;所述第一目标gpu核是所述更新涉及到的目标gpu核,所述第一虚拟机是所述更新涉及到的虚拟机,且根据更新前的所述地址映射表可将所述第一虚拟机发起的第一访问请求转发至所述第一目标gpu核。

8、本公开一种可行的实现方式中,所述soc还包括片内内存,在所述第一目标gpu核具备保存上下文的能力的情况下,所述第一目标gpu核,被配置为:将当前已生成的与所述第一任务的执行情况对应的上下文保存在所述片内内存后,清除所述第一目标gpu核上与所述第一任务对应的配置并重启。

9、本公开一种可行的实现方式中,在所述第一目标gpu核不具备保存上下文的能力的情况下,所述第一目标gpu核,被配置为:执行完所述第一任务后,清除所述第一目标gpu核上与所述第一任务对应的配置并重启。

10、本公开一种可行的实现方式中,所述地址映射表为页表或者段地址映射表。

11、根据本公开的另一方面,还提供一种资源管理方法,应用于soc,所述soc包括物理gpu核、用于与片外的主机通信的地址映射模块以及与所述物理gpu核一一对应连接的标识映射模块,所述主机上运行有虚拟机;所述方法包括:

12、所述地址映射模块根据当前的地址映射表,将所述虚拟机发起的第一访问请求转发至所述虚拟机可访问的寄存器所属的目标gpu核;所述目标gpu核是所述寄存器所在的物理gpu核或是所述寄存器所在的虚拟gpu核,所述虚拟gpu核由所述寄存器所在的物理gpu核虚拟化出;所述标识映射模块根据当前的标识映射表及所述目标gpu核响应所述第一访问请求后生成的中断信息,向所述目标gpu核反馈可通信的目标虚拟机的目标虚拟机标识;所述地址映射表与所述标识映射表可由软件进行配置更改,且所述标识映射表与所述地址映射表的映射内容互逆;所述目标gpu核根据所述目标虚拟机标识,向所述目标虚拟机发送所述中断信息。

13、本公开一种可行的实现方式中,所述第一访问请求携带所述虚拟机的虚拟机标识及待访问地址;根据当前的地址映射表,将所述虚拟机发起的第一访问请求转发至所述虚拟机可访问的寄存器所属的目标gpu核,包括:从当前的所述地址映射表中查找与所述虚拟机标识对应的目标地址映射表;根据所述目标地址映射表将所述第一访问请求携带的所述待访问地址映射成所述可访问的寄存器的地址;将所述第一访问请求转发至所述可访问的寄存器的地址所属的所述目标gpu核。

14、本公开一种可行的实现方式中,所述中断信息携带所述目标gpu核的gpu标识;根据当前的标识映射表及所述目标gpu核响应所述第一访问请求后生成的中断信息,向所述目标gpu核反馈可通信的目标虚拟机的目标虚拟机标识,包括:根据当前的所述标识映射表将所述中断信息携带的所述gpu标识映射成虚拟机的标识,所述虚拟机的标识是所述目标虚拟机的目标虚拟机标识;将所述目标虚拟机标识反馈至所述目标gpu核。

15、本公开一种可行的实现方式中,所述中断信息携带虚拟地址,所述虚拟地址由所述目标gpu核内的驱动生成所述中断信息时生成,所述soc还包括片内内存,且在所述片内内存中保存有与各个虚拟机的虚拟机标识一一对应的页表;所述根据所述目标虚拟机标识,向所述目标虚拟机发送所述中断信息,包括:访问所述片内内存中与所述目标虚拟机标识对应的目标页表;根据所述目标页表将所述中断信息携带的所述虚拟地址映射为所述目标虚拟机的地址,并将所述中断信息发送至所述目标虚拟机的地址。

16、本公开一种可行的实现方式中,在当前的所述地址映射表存在更新的情况下,所述方法还包括:第一目标gpu核接收第一虚拟机发送的更新指令;在所述第一目标gpu核检测到自身当前存在未执行完的第一任务时,响应所述更新指令,根据所述第一目标gpu核的上下文保存能力,执行对应的第一任务执行策略;所述第一目标gpu核是所述更新涉及到的目标gpu核,所述第一虚拟机是所述更新涉及到的虚拟机,且根据更新前的所述地址映射表可将所述第一虚拟机发起的第一访问请求转发至所述第一目标gpu核。

17、本公开一种可行的实现方式中,所述soc包括片内内存,在所述第一目标gpu核具备保存上下文的能力的情况下,所述根据所述第一目标gpu核的上下文保存能力,执行对应的第一任务执行策略,包括:将当前已生成的与所述第一任务的执行情况对应的上下文保存在所述片内内存后,清除所述第一目标gpu核上与所述第一任务对应的配置并重启。

18、本公开一种可行的实现方式中,在所述第一目标gpu核不具备保存上下文的能力的情况下,所述根据所述第一目标gpu核的上下文保存能力,执行对应的第一任务执行策略,包括:执行完所述第一任务后,清除所述第一目标gpu核上与所述第一任务对应的配置并重启。

19、根据本公开的另一方面,还提供一种电子组件,该电子组件包括上述任一实施例中所述的soc。在一些使用场景下,该电子组件的产品形式体现为显卡;在另一些使用场景下,该电子组件的产品形式体现为cpu主板。

20、根据本公开的另一方面,还提供一种电子设备,该电子设备包括上述的电子组件。在一些使用场景下,该电子设备的产品形式是便携式电子设备,例如智能手机、平板电脑、vr设备等;在一些使用场景下,该电子设备的产品形式是个人电脑、游戏主机等。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1