图形处理器性能测试方法、装置、计算机设备、存储介质制造方法及图纸

技术编号:37527546 阅读:22 留言:0更新日期:2023-05-12 15:52
本申请涉及一种图形处理器性能测试方法、装置、计算机设备、存储介质。所述方法包括:接收图形处理器驱动程序下发的模式设置命令,从模式设置命令中识别目标功能单元;基于引擎性能计数器与功能单元的对应关系,从多个引擎性能计数器中确定与目标功能单元对应的目标引擎性能计数器;根据模式设置命令,将目标引擎性能计数器的监测目标设置为目标功能单元;接收图形处理器驱动程序下发的计数查询命令,通过目标引擎性能计数器获取目标功能单元的计数值,根据目标功能单元的计数值得到图形处理器的性能测试结果。采用本方法能够能够降低测试设备的运行负载。试设备的运行负载。试设备的运行负载。

【技术实现步骤摘要】
图形处理器性能测试方法、装置、计算机设备、存储介质


[0001]本申请涉及芯片开发测试
,特别是涉及一种图形处理器性能测试方法、装置、计算机设备、存储介质和计算机程序产品。

技术介绍

[0002]在GPU芯片设计中,需要对芯片在运行时的行为和管线瓶颈加以分析,这就需要performance counter,即性能计数器。性能计数器是指在GPU上运行特定程序时,对GPU核心以及显存等模块行为进行监测的一组硬件单元。性能计数器的存在是DirectX,OpenGL以及Vulkan等软件API的要求,GPU厂商需要予以支持。此外,游戏开发人员在编写以及优化游戏程序的过程中,需要看到程序在特定GPU硬件上的运行情况,分析其瓶颈所在进而改进程序,这也需要通过性能计数器来实现。设计性能计数最直接的方法就是在被监测的模块中实例化加法器,并将结果存放在counter寄存器中。performance counter需要对各个模块,例如ALU,各级缓存等模块的特定行为进行监测。
[0003]传统的performance counter实现方式为在各个模块中实例化加法器以及寄存器。当条件触发时,加法器将为对应寄存器中的counter将增加预定的数值,这会导致在整个芯片中增加大量的寄存器和加法器。此外,当GPU驱动程序下发counter查询以及设置命令时,需要将这些命令送到芯片中的所有模块,这会带来命令数量过多以及额外的地址对齐等操作,给测试设备带来很大的运行负载。
[0004]目前的图形处理器性能测试方式,测试设备的运行负载很高。

技术实现思路

[0005]基于此,有必要针对上述技术问题,提供一种能够降低测试设备运行负载的图形处理器性能测试方法、装置、计算机设备、计算机可读存储介质和计算机程序产品。
[0006]第一方面,本申请提供了一种图形处理器性能测试方法。所述方法包括:
[0007]接收图形处理器驱动程序下发的模式设置命令,从模式设置命令中识别目标功能单元;图形处理器包括多个功能单元;
[0008]基于引擎性能计数器与功能单元的对应关系,从多个引擎性能计数器中确定与目标功能单元对应的目标引擎性能计数器;
[0009]根据模式设置命令,将目标引擎性能计数器的监测目标设置为目标功能单元;
[0010]接收图形处理器驱动程序下发的计数查询命令,通过目标引擎性能计数器获取目标功能单元的计数值,根据目标功能单元的计数值得到图形处理器的性能测试结果;计数值用于表征功能单元的工作性能。
[0011]在其中一个实施例中,通过目标引擎性能计数器获取目标功能单元的计数值,根据目标功能单元的计数值得到图形处理器的性能测试结果,包括:
[0012]获取目标引擎性能计数器的初始计数值;
[0013]在图形处理器完成测试任务之后,获取目标引擎性能计数器的实时计数值;
[0014]根据实时计数值和初始计数值,得到目标功能单元对应测试任务的计数值增量;
[0015]根据目标功能单元对应测试任务的计数值增量,得到图形处理器的性能测试结果。
[0016]在其中一个实施例中,获取目标引擎性能计数器的初始计数值,包括:
[0017]在图形处理器执行测试任务之前,通过目标引擎性能计数器获取目标功能单元的计数值,作为目标引擎性能计数器的初始计数值。
[0018]在其中一个实施例中,方法还包括:
[0019]获取图形处理器驱动程序下发的初始值设置命令,从初始值设置命令中识别待设置功能单元;初始值设置命令包括目标初始值;
[0020]基于引擎性能计数器与功能单元的对应关系,从多个引擎性能计数器中确定与待设置功能单元对应的待设置引擎性能计数器;
[0021]根据初始值设置命令,将待设置引擎性能计数器的初始计数值设置为目标初始值。
[0022]在其中一个实施例中,引擎性能计数器与功能单元的对应关系的获取方式,包括:
[0023]确定图形处理器中各功能单元的功能类别;每一个功能类别对应至少一个功能单元;
[0024]对相同功能类别的多个功能单元配置同一个引擎性能计数器,得到引擎性能计数器与功能单元的对应关系。
[0025]在其中一个实施例中,方法还包括:
[0026]通过核心性能计数器获取图形处理器的辅助单元的计数值,根据目标功能单元的计数值和辅助单元的计数值得到图形处理器的性能测试结果。
[0027]第二方面,本申请还提供了一种图形处理器性能测试装置。所述装置配置于图形处理器上,图形处理器包括至少一个功能模块,每一个功能模块包括至少一个功能单元,装置包括:
[0028]核心性能计数模块,配置于图形处理器的命令解析模块中,用于接收命令解析模块传输的模式设置命令,从模式设置命令中识别目标功能单元,基于功能模块与功能单元的对应关系,从多个功能模块中确定与目标功能单元对应的目标功能模块,基于引擎性能计数模块与功能模块的对应关系,从多个引擎性能计数模块中确定与目标功能单元对应的目标引擎性能计数模块,将模式设置命令下发至目标引擎性能计数模块;
[0029]核心性能计数模块,还用于接收命令解析模块传输的计数查询命令,将计数查询命令下发至目标引擎性能计数模块,接收目标引擎性能计数器传输的目标功能单元的计数值,并将目标功能单元的计数值传输至图形处理器的命令解析模块;计数值用于表征功能单元的工作性能;
[0030]至少一个引擎性能计数模块,配置于图形处理器的功能引擎模块中,每一个引擎性能计数模块与图形处理器的每一个功能模块一一对应,用于接收核心性能计数模块传输的模式设置命令,并根据模式设置命令,将监测目标设置为目标功能单元;
[0031]引擎性能计数模块,还用于接收核心性能计数模块传输的计数查询命令,获取目标功能单元的计数值,并将目标功能单元的计数值传输至核心性能计数模块。
[0032]在其中一个实施例中,引擎性能计数模块还包括:
[0033]模式选择器,与多条功能单元总线连接,每条功能单元总线分别连接一个功能单元;用于根据模式设置命令,获取目标功能单元传输的目标功能单元数据;
[0034]寄存器,用于存储目标功能单元的计数值;
[0035]加法器,用于根据目标功能单元数据对寄存器中的目标功能单元的计数值进行更新。
[0036]在其中一个实施例中,图形处理器还包括至少一个辅助单元,核心性能计数模块,还用于获取图形处理器的辅助单元的计数值,并将图形处理器的辅助单元的计数值传输至图形处理器的命令解析模块。
[0037]第三方面,本申请还提供了一种计算机设备。所述计算机设备包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现以下步骤:
[0038]接收图形处理器驱动程序下发的模式设置命令,从模式设置命令中识别目标功能单元;图形处理器包括多个功能单元;
[0039]基于引擎性能计数器与功能单元的对应关系,从多个本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种图形处理器性能测试方法,其特征在于,所述方法包括:接收图形处理器驱动程序下发的模式设置命令,从所述模式设置命令中识别目标功能单元;所述图形处理器包括多个功能单元;基于引擎性能计数器与功能单元的对应关系,从多个引擎性能计数器中确定与所述目标功能单元对应的目标引擎性能计数器;根据所述模式设置命令,将所述目标引擎性能计数器的监测目标设置为所述目标功能单元;接收图形处理器驱动程序下发的计数查询命令,通过所述目标引擎性能计数器获取所述目标功能单元的计数值,根据所述目标功能单元的计数值得到所述图形处理器的性能测试结果;所述计数值用于表征功能单元的工作性能。2.根据权利要求1所述的方法,其特征在于,所述通过所述目标引擎性能计数器获取所述目标功能单元的计数值,根据所述目标功能单元的计数值得到所述图形处理器的性能测试结果,包括:获取所述目标引擎性能计数器的初始计数值;在所述图形处理器完成测试任务之后,获取所述目标引擎性能计数器的实时计数值;根据所述实时计数值和所述初始计数值,得到所述目标功能单元对应所述测试任务的计数值增量;根据所述目标功能单元对应所述测试任务的计数值增量,得到所述图形处理器的性能测试结果。3.根据权利要求2所述的方法,其特征在于,所述获取所述目标引擎性能计数器的初始计数值,包括:在所述图形处理器执行测试任务之前,通过所述目标引擎性能计数器获取所述目标功能单元的计数值,作为所述目标引擎性能计数器的初始计数值。4.根据权利要求1或2所述的方法,其特征在于,所述方法还包括:获取图形处理器驱动程序下发的初始值设置命令,从所述初始值设置命令中识别待设置功能单元;所述初始值设置命令包括目标初始值;基于引擎性能计数器与功能单元的对应关系,从多个引擎性能计数器中确定与所述待设置功能单元对应的待设置引擎性能计数器;根据所述初始值设置命令,将所述待设置引擎性能计数器的初始计数值设置为所述目标初始值。5.根据权利要求1所述的方法,其特征在于,所述引擎性能计数器与功能单元的对应关系的获取方式,包括:确定所述图形处理器中各功能单元的功能类别;每一个功能类别对应至少一个功能单元;对相同功能类别的多个功能单元配置同一个引擎性能计数器,得到所述引擎性能计数器与功能单元的对应关系。6.根据权利要求1所述的方法,其特征在于,所述方法还包括:通过核心性能计数器获取所述图形处理器的辅助单元的计数值,根据所述目标功能单元...

【专利技术属性】
技术研发人员:张宽宇全颖
申请(专利权)人:格兰菲智能科技有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1