预览加载中,请您耐心等待几秒...
1/7
2/7
3/7
4/7
5/7
6/7
7/7

在线预览结束,喜欢就下载吧,查找使用更方便

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

(19)中华人民共和国国家知识产权局(12)发明专利申请(10)申请公布号CN112967171A(43)申请公布日2021.06.15(21)申请号202110278706.4(22)申请日2021.03.15(71)申请人深圳市瑞驰信息技术有限公司地址518000广东省深圳市前海深港合作区前湾一路1号A栋201(入驻深圳市前海商务秘书有限公司)(72)发明人刘凯邓亚军王钦(74)专利代理机构深圳市中科创为专利代理有限公司44384代理人彭西洋宋鹏跃(51)Int.Cl.G06T1/20(2006.01)G06T15/00(2011.01)权利要求书1页说明书3页附图2页(54)发明名称一种基于ARM架构实现GPU虚拟化的系统及方法(57)摘要本发明涉及一种基于ARM架构实现GPU虚拟化的系统及方法,包括:虚拟机配置的第一软件模块,及宿主机配置的第二软件模块;所述第一软件模块包含各类应用程序App,所述第二软件模块具备3D渲染功能,可将第一软件模块中的App进行3D渲染。本发明可以在Android系统中实现GPU的虚拟化,不需要GPU厂家的特殊支持,即可在多个Android虚拟系统中共享使用本机的GPU,提高用户的操作体验,充分利用GPU资源,节省成本。同时,这种方式不限于某个具体的GPU型号,通常的ARM架构中的GPU都可以使用上面的方式。CN112967171ACN112967171A权利要求书1/1页1.一种基于ARM架构实现GPU虚拟化的系统,其特征在于,包括:虚拟机配置的第一软件模块,及宿主机配置的第二软件模块;所述第一软件模块包含各类应用程序App,所述第二软件模块具备3D渲染功能,可将第一软件模块中的App进行3D渲染。2.根据权利要求1所述的基于ARM架构实现GPU虚拟化的系统,其特征在于,所述第一软件模块包括:Kvm+QEMU,用于实现底层系统;AndroidKernel,在上面运行独立的AndroidKernel内核,为Android系统提供服务;Libraries,为Android系统中的共享库,与普通Android系统中的一致;AndroidRuntime,为Android的运行时库,与普通Android系统中的一致;vGPULibrary,为虚拟机中模拟GPU的模块,实现一个软GPU的功能,为上层App提供3D渲染服务;ApplicationFramework,为Android系统框架,与普通Android系统的一致;App,为在Android虚拟机中运行的各类应用。3.根据权利要求2所述的基于ARM架构实现GPU虚拟化的系统,其特征在于,所述第二软件模块包括:3DRender模块,3D渲染模块,运行于宿主机上,与虚拟机中的vGPULibrary进行通讯,负责3D图形的整体渲染调用;OpenGLESTranslator模块,运行于宿主机中,接收3DRender的渲染指令,并转换为本机的OpenGL接口;本地因为运行不同的GPU硬件和驱动,可能提供不同的OpenGL版本和接口,OpenGLESTranslator则根据情况进行适配和转换;GPULibrary模块,本机GPU的API接口库,由GPU厂家提供,与内核中的GPUDriver通讯,共同来实现GPU渲染功能;GPUDriver内核模块,GPU厂家提供的GPU驱动,与GPULibrary一同提供GPU功能。4.一种基于ARM架构实现GPU虚拟化的方法,其特征在于,包括步骤:(1)App进行窗体等初始化后,如果要在窗体上进行3D图形绘制,先将3D渲染指令发送给vGPULibrary;(2)vGPU库会与外部宿主机上的3DRender建立高速通道,因为都运行于同一套系统内部,可采用共享内存的传输方式,减少渲染指令及数据在内存中的复制次数;(3)接下来,3DRender与本机的OpenGLESTranslator模块通讯,将指令再次转发给Translator模块;(4)OpenGLESTranslator模块根据当前的主机系统和GPU配置,将渲染指令转换为不同的版本和格式要求,再次发送给本机上的物理GPULibrary共享库;(5)由GPULibrary与内核中的GPUDriver共同来完成渲染指令的执行;(6)渲染指令执行完成后,再按照上面的反顺序,将结果返回给App程序,完成一条渲染指令的执行。2CN112967171A说明书1/3页一种基于ARM架构实现GPU虚拟化的系统及方法技术领域[0001]本发明涉及Andriod系统技术领域,具体涉及一种基于ARM架构实现GPU虚拟化的系统及方法。背景技术[0002]虚拟化在以x86CPU为基础的系统中已经发展的非常成熟,无论是公有云还是私有云的应用都非常成熟和丰富。而随着以ARM架构CPU为核心的智能手