发明名称 |
一种GPU的模拟方法 |
摘要 |
本发明公开了一种GPU的模拟方法,首先基于系统虚拟化和GPU使用原理,在内核态模拟器中截获客户GPU的指令序列,然后根据用户配置,选择如下两种机制的任意一种完成对客户GPU的模拟。机制一,基于二进制翻译技术在低级语义上直接完成指令翻译,并最终在宿主GPU上执行;机制二,利用GPU现有软件栈完成指令转换,并最终在宿主GPU上执行。本发明基于宿主机的物理GPU为虚拟机提供高效模拟的GPU(虚拟GPU和物理GPU的型号版本可以不同),解决了GPU模拟速度慢的问题。本发明主要基于系统虚拟化技术,同时借助现有GPU软件栈提供的便利条件,提高GPU模拟速度,并有效控制该方法实现的难度和复杂度。 |
申请公布号 |
CN106371890A |
申请公布日期 |
2017.02.01 |
申请号 |
CN201610751451.8 |
申请日期 |
2016.08.29 |
申请人 |
山东乾云启创信息科技股份有限公司 |
发明人 |
石磊;张辉;程栋;牛文强 |
分类号 |
G06F9/455(2006.01)I |
主分类号 |
G06F9/455(2006.01)I |
代理机构 |
济南圣达知识产权代理有限公司 37221 |
代理人 |
黄海丽 |
主权项 |
一种GPU的模拟方法,其特征是,包括如下步骤:步骤101:在虚拟机中,应用程序向客户GPU驱动发出高级命令;步骤102:客户GPU驱动,把应用程序提交的高级命令转化为对应客户GPU可识别的一组低级指令序列,然后写入客户GPU指令缓冲;步骤103:客户GPU驱动在提交若干相关联的高级命令后,触发一次提交操作,该提交操作触发虚拟机退出VM‑Exit,控制权转移到内核态模拟器,由内核态模拟器根据配置策略决定GPU模拟不同的机制。 |
地址 |
250101 山东省济南市高新区新泺大街2008号银荷大厦B座1001 |