[发明专利]一种GPU虚拟化共享方法、装置及电子设备和存储介质在审
| 申请号: | 201911386438.7 | 申请日: | 2019-12-29 |
| 公开(公告)号: | CN111223036A | 公开(公告)日: | 2020-06-02 |
| 发明(设计)人: | 刘云飞 | 申请(专利权)人: | 广东浪潮大数据研究有限公司 |
| 主分类号: | G06T1/20 | 分类号: | G06T1/20;G06F9/455;G06F9/50 |
| 代理公司: | 北京集佳知识产权代理有限公司 11227 | 代理人: | 史翠 |
| 地址: | 510620 广东省广州市天河区*** | 国省代码: | 广东;44 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 一种 gpu 虚拟 共享 方法 装置 电子设备 存储 介质 | ||
1.一种GPU虚拟化共享方法,其特征在于,包括:
确定目标物理GPU,并将目标物理GPU划分为多个虚拟GPU;
当接收到目标任务时,在所述目标物理GPU选取目标虚拟GPU,以便利用所述目标虚拟GPU执行所述目标任务;
在执行所述目标任务的过程中,当接收到对CUDA函数的调用请求时,将所述调用请求重定向至劫持库;其中,所述劫持库包括多个CUDA函数对应的重名函数,每个所述重名函数的返回值基于所述目标虚拟GPU的信息确定。
2.根据权利要求1所述GPU虚拟化共享方法,其特征在于,还包括:
确定所述劫持库的文件路径,并将LD_PRELOAD环境变量设置为所述文件路径。
3.根据权利要求2所述GPU虚拟化共享方法,其特征在于,将所述调用请求重定向至劫持库,包括:
基于所述LD_PRELOAD环境变量通过加载器加载所述劫持库,并在所述劫持库中查找所述调用请求对应的目标函数;
基于所述目标虚拟GPU的信息执行所述目标函数得到所述调用请求的响应结果。
4.根据权利要求1所述GPU虚拟化共享方法,其特征在于,所述将目标物理GPU划分为多个虚拟GPU,包括:
确定所述目标物理GPU与所述虚拟GPU的比例,并基于所述比例将所述目标物理GPU划分为多个虚拟GPU。
5.一种GPU虚拟化共享装置,其特征在于,包括:
划分模块,用于确定目标物理GPU,并将目标物理GPU划分为多个虚拟GPU;
选取模块,用于当接收到目标任务时,在所述目标物理GPU选取目标虚拟GPU,以便利用所述目标虚拟GPU执行所述目标任务;
重定向模块,用于在执行所述目标任务的过程中,当接收到对CUDA函数的调用请求时,将所述调用请求重定向至劫持库;其中,所述劫持库包括多个CUDA函数对应的重名函数,每个所述重名函数的返回值基于所述目标虚拟GPU的信息确定。
6.根据权利要求5所述GPU虚拟化共享装置,其特征在于,还包括:
设置模块,用于确定所述劫持库的文件路径,并将LD_PRELOAD环境变量设置为所述文件路径。
7.根据权利要求6所述GPU虚拟化共享装置,其特征在于,所述重定向模块包括:
查找单元,用于在执行所述目标任务的过程中,当接收到对CUDA函数的调用请求时,基于所述LD_PRELOAD环境变量通过加载器加载所述劫持库,并在所述劫持库中查找所述调用请求对应的目标函数;
执行单元,用于基于所述目标虚拟GPU的信息执行所述目标函数得到所述调用请求的响应结果。
8.根据权利要求5所述GPU虚拟化共享装置,其特征在于,所述划分模块具体为确定目标物理GPU,确定所述目标物理GPU与所述虚拟GPU的比例,并基于所述比例将所述目标物理GPU划分为多个虚拟GPU的模块。
9.一种电子设备,其特征在于,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序时实现如权利要求1至4任一项所述GPU虚拟化共享方法的步骤。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1至4任一项所述GPU虚拟化共享方法的步骤。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于广东浪潮大数据研究有限公司,未经广东浪潮大数据研究有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201911386438.7/1.html,转载请声明来源钻瓜专利网。





