【技术实现步骤摘要】
一种基于指令流分析的图形混合加速模式的验证方法
[0001]本专利技术属于计算机软件开发
,具体涉及一种基于指令流分析的图形混合加速模式的验证方法。
技术介绍
[0002]图形处理器(graphics processing unit,GPU)对于图形接口标准的支持都是需要明确到具体版本的,比如说支持OpenGL就必须指明支持到OpenGL的哪个版本(例如最高支持到4.6),图形接口标准的不同版本间增量也很大,支持到最新的图形接口标准难度非常大。
[0003]对于能力较弱的GPU,很难支持到高版本的图形接口标准。例如,经过实测,目前国产桌面GPU基本只支持到OpenGL 4.0(最新版本是4.6,OpenGL标准在4.6版本之后就未再更新),即便支持到版本4.0的GPU也有不少扩展没有支持。但是,实际上,往往有些GPU厂商“号称”自己的GPU支持到了4.5版本的图形接口标准,而实际情况通常是当应用请求的最低版本是4.0版的图形接口标准时,这些GPU的驱动确实使用GPU硬件加速,而请求的最低版本是更高版本的图形接口标准时(4.0+),则切换到CPU渲染(如使用llvmpipe)。
[0004]为了验证GPU到底是不是这种CPU/GPU混合的图形加速模式,并且确定是从哪个版本的图形加速接口开始切换到CPU加速的,需要一种软件的验证方法。
技术实现思路
[0005]有鉴于此,本专利技术提供了一种基于指令流分析的图形混合加速模式的验证方法,用软件的方式,能够甄别出GPU到底是不是CPU/G ...
【技术保护点】
【技术特征摘要】
1.一种基于指令流分析的图形混合加速模式的验证方法,其特征在于,所述方法包括:步骤S1:针对图形接口标准的第M个版本构造测试集,记为测试集CTS
‑
M,其中包括Count
CTS
‑
M
个程序;针对所述第M个版本之后的最接近所述第M个版本的图形接口标准的第N个版本构造测试集,记为测试集CTS
‑
N,其中也包括Count
CTS
‑
M
个程序;其中,所述第M个版本大于等于图形接口标准的最低版本;所述第N个版本小于图形接口标准的最高版本;所述测试集CTS
‑
N是由在所述测试集CTS
‑
M中的每个程序的源代码后插入特定代码片段的Count
CTS
‑
M
个程序组成;步骤S2:修改Linux内核,监视GPU相关中断的调用情况;步骤S3:修改Linux的窗口管理器,实现只刷新指定进程的窗口;步骤S4:关闭除测试程序外所有窗口程序;步骤S5:针对所述测试集CTS
‑
M中的每个程序,分别执行T次,并记录每个程序的运行数据;针对所述测试集CTS
‑
N中的每个程序,分别执行T次,并记录每个程序的运行数据,其中,针对所述测试集CTS
‑
N中的每个程序的运行数据的记录仅记录到插入的所述特定代码片段前;步骤S6:对上述记录的所述测试集CTS
‑
M中的每个程序的T个运行数据对T求均值;对上述记录的所述测试集CTS
‑
N中的每个程序的T个运行数据对T求均值;步骤S7:将上述步骤S6中得到的所述测试集CTS
‑
M中的每个程序的运行数据的均值分别与所述测试集CTS
‑
N中与测试集CTS
‑
M中每个程序相对应的程序的运行数据的均值进行比较,得到所述测试集CTS
‑
M和所述测试集CTS
‑
N之间的Count
CTS
‑
M
个程序的运行数据的偏差;步骤...
【专利技术属性】
技术研发人员:温研,
申请(专利权)人:北京麟卓信息科技有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。