CN111367780A - 一种gpu的性能测试方法、装置及计算机存储介质 - Google Patents

一种gpu的性能测试方法、装置及计算机存储介质 Download PDF

Info

Publication number
CN111367780A
CN111367780A CN202010233999.XA CN202010233999A CN111367780A CN 111367780 A CN111367780 A CN 111367780A CN 202010233999 A CN202010233999 A CN 202010233999A CN 111367780 A CN111367780 A CN 111367780A
Authority
CN
China
Prior art keywords
test case
gpu
program
weight value
module
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN202010233999.XA
Other languages
English (en)
Other versions
CN111367780B (zh
Inventor
马栋
刘微
张斌
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Xi'an Xintong Semiconductor Technology Co ltd
Original Assignee
Xi'an Xintong Semiconductor Technology Co ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Xi'an Xintong Semiconductor Technology Co ltd filed Critical Xi'an Xintong Semiconductor Technology Co ltd
Priority to CN202010233999.XA priority Critical patent/CN111367780B/zh
Publication of CN111367780A publication Critical patent/CN111367780A/zh
Application granted granted Critical
Publication of CN111367780B publication Critical patent/CN111367780B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • G06F11/3452Performance evaluation by statistical analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3668Software testing
    • G06F11/3672Test management
    • G06F11/3676Test management for coverage analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3668Software testing
    • G06F11/3672Test management
    • G06F11/3684Test management for test design, e.g. generating new test cases
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • General Physics & Mathematics (AREA)
  • Quality & Reliability (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Probability & Statistics with Applications (AREA)
  • Evolutionary Biology (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Image Generation (AREA)

Abstract

本发明实施例公开了一种GPU的性能测试方法、装置及计算机存储介质;该方法可以包括:分析测试用例集中的每个测试用例程序中GPU相关代码的占比值;统计测试用例集中的每个测试用例程序在GPU的运行时长以及运行过程中的帧处理量;对于每个测试用例程序,按照GPU的图形渲染管线划分为多个代码模块,并计算各代码模块的权重值;基于设定的各代码模块对应的影响因子和各代码模块的权重值,以及每个测试用例程序中GPU相关代码的占比值,获取每个测试用例程序在测试用例集中对应的权重值;基于测试用例集中的所有测试用例程序在测试用例集中对应的权重值、运行时长以及运行过程中的帧处理量确定测试用例集针对所述GPU进行性能测试的性能分值。

Description

一种GPU的性能测试方法、装置及计算机存储介质
技术领域
本发明实施例涉及图形处理器(GPU,Graphics Processing Unit)技术领域,尤其涉及一种GPU的性能测试方法、装置及计算机存储介质。
背景技术
通常来说,在应用GPU的时候需要进行对比性能,比如根据不同的应用方向选择能够匹配特定应用的显卡芯片。而GPU硬件厂商提供的性能指标差异较大,并且性能指标数据大多是通过理论计算获得,在实际应用中,只能对芯片的选择和性能对比具有参考作用,而在具体使用过程中仍旧需要对具体芯片进行性能测试,通过不同芯片在相同平台下测试所获得性能数据来进行对比判断。
当前,通用的GPU硬件性能测试工具,在无法获取GPU硬件各处理模块的详细信息的情况下,均通过提供测试设计应用程序来进行性能测试评价。常规的性能测试评价也仅通过平均帧率或平均帧率的简单运算得到,在计算方法上过于简单;同时受跑分测试程序的影响,不能全部匹配GPU中众多的标准功能,并且不同应用程序可覆盖的硬件功能点不同,测试数据在计算上过于片面,导致目前常规的针对GPU的性能测试方案无法对GPU硬件性能进行全面和客观的评价。
发明内容
有鉴于此,本发明实施例期望提供一种GPU的性能测试方法、装置及计算机存储介质;能够准确、客观、全面地对GPU的性能进行测试,还能够节省性能测试的运行时间。
本发明实施例的技术方案是这样实现的:
第一方面,本发明实施例提供了一种GPU的性能测试方法,所述方法包括:
分析测试用例集中的每个测试用例程序中GPU相关代码的占比值;
统计测试用例集中的每个测试用例程序在GPU的运行时长以及运行过程中的帧处理量;
对于每个测试用例程序,按照所述GPU的图形渲染管线划分为多个代码模块,并计算各代码模块的权重值;
基于设定的各代码模块对应的影响因子和各代码模块的权重值,以及每个测试用例程序中GPU相关代码的占比值,获取每个测试用例程序在所述测试用例集中对应的权重值;
基于所述测试用例集中的所有测试用例程序在所述测试用例集中对应的权重值、运行时长以及运行过程中的帧处理量确定所述测试用例集针对所述GPU进行性能测试的性能分值。
第二方面,本发明实施例提供了一种GPU的性能测试装置,所述装置包括:分析部分、统计部分、划分部分、计算部分、获取部分以及确定部分;其中,
所述分析部分,经配置为分析测试用例集中的每个测试用例程序中GPU相关代码的占比值;
所述统计部分,经配置为统计测试用例集中的每个测试用例程序在GPU的运行时长以及运行过程中的帧处理量;
所述划分部分,经配置为对于每个测试用例程序,按照所述GPU的图形渲染管线划分为多个代码模块;
所述计算部分,经配置为计算各代码模块的权重值;
所述获取部分,经配置为基于设定的各代码模块对应的影响因子和各代码模块的权重值,以及每个测试用例程序中GPU相关代码的占比值,获取每个测试用例程序在所述测试用例集中对应的权重值;
所述确定部分,经配置为基于所述测试用例集中的所有测试用例程序在所述测试用例集中对应的权重值、运行时长以及运行过程中的帧处理量确定所述测试用例集针对所述GPU进行性能测试的性能分值。
第三方面,本发明实施例提供了一种GPU的性能测试装置,所述装置包括:存储器和处理器;其中,
所述存储器存储有GPU的性能测试程序,以及包含有多个测试用例程序的测试用例集;所述处理器,经配置为根据所述测试用例集运行所述GPU的性能测试程序以执行第一方面所述的GPU的性能测试方法的步骤。
第四方面,本发明实施例提供了一种计算机存储介质,所述计算机存储介质存储有GPU的性能测试程序,所述GPU的性能测试程序被至少一个处理器执行时实现第一方面所述的GPU的性能测试方法的步骤。
本发明实施例提供了一种GPU的性能测试方法、装置及计算机存储介质;针对测试用例程序中GPU相关代码进行测试,从而减少测试过程中与GPU无关因素的影响,使得最终获得的性能分值更加准确和客观,并且按照图形渲染管线对测试用例程序进行划分并对应计算权重,从而能够体现GPU的图形渲染管线中各硬件部分的主次情况,并且能够覆盖更加全面,是性能分值更有参考性,并且在测试用例集确定之后,仅需要通过一次运算即可确定所有测试用例程序的权重值,后续在GPU上运行过程中不用再重复计算,只需获取对应的运行时长和帧处理量即可,从而还能够节省GPU性能测试的运行时间。
附图说明
图1为本发明实施例提供的一种计算装置组成示意图。
图2为本发明实施例提供的一种图形渲染管线的组成示意图。
图3为本发明实施例提供的一种GPU的性能测试方法的流程示意图。
图4为本发明实施例提供的一种GPU的性能测试装置组成示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述。
参见图1,其示出了本发明实施例提供的一种计算装置1,该计算装置1的实例包括但不限于:无线装置、移动或蜂窝电话(包含所谓的智能电话)、个人数字助理(PDA)、视频游戏控制台(包含视频显示器、移动视频游戏装置、移动视频会议单元)、膝上型计算机、桌上型计算机、电视机顶盒、平板计算装置、电子书阅读器、固定或移动媒体播放器,等。在图1的实例中,该计算装置1可以包括:处理器6、系统存储器10和GPU 12。计算装置1还可包含显示处理器14、收发器模块3、用户接口4和显示器8。收发器模块3和显示处理器14两者可为与处理器6和/或GPU 12相同的集成电路(IC)的模块,两者可在包含处理器6和/或GPU 12的一或多个IC的外部,或可形成于在包含处理器6和/或GPU 12的IC外部的IC中。
为清楚起见,计算装置1可包含图1中未图示的额外模块或单元。举例来说,计算装置1可在其中计算装置1为移动无线电话或的实例中包含扬声器和麦克风(两者均未在图1中示出)来实现电话通信,或在计算装置1为媒体播放器的情况下包含扬声器。计算装置1还可包含摄像机。此外,计算装置1中所示的各种模块和单元可能不是在计算装置1的每个实例中都是必需的。举例来说,在计算装置1为桌上型计算机或经装备以与外部用户接口或显示器介接的其它装置的实例中,用户接口4和显示器8可在计算装置1外部。
用户接口4的实例包含(但不限于)轨迹球、鼠标、键盘和其它类型的输入装置。用户接口4还可为触摸屏,并且可作为显示器8的模块并入。收发器模块3可包含电路以允许计算装置1与另一装置或网络之间的无线或有线通信。收发器模块3可包含调制器、解调器、放大器和用于有线或无线通信的其它此类电路。
处理器6可为微处理器,例如如图1所示的中央处理单元(CPU),其经配置以处理供执行的计算机程序的指令。处理器6可包括控制计算装置1的运算的通用或专用处理器。用户可将输入提供到计算装置1,以致使处理器6执行一或多个软件应用程序。在处理器6上执行的软件应用程序可包含(例如)操作系统、文字处理器应用程序、电子邮件应用程序、电子表格应用程序、媒体播放器应用程序、视频游戏应用程序、图形用户接口应用程序或另一程序。另外,处理器6可执行用于控制GPU 12的运算的GPU驱动程序22。用户可经由一或多个输入装置(未图示)(例如,键盘、鼠标、麦克风、触摸垫或经由用户输入接口4耦合到计算装置1的另一输入装置)将输入提供到计算装置1。
在处理器6上执行的软件应用程序可包含一或多个图形渲染指令,其指令处理器6来致使将图形数据渲染到显示器8。在一些实例中,所述软件指令可符合图形应用程序编程接口(API),例如开放式图形库API、开放式图形库嵌入系统(OpenGL ES)API、Direct3DAPI、X3D API、RenderMan API、WebGL API、开放式计算语言(OpenCLT M)、RenderScript或任何其它异构计算API,或任何其它公用或专有标准图形或计算API。所述软件指令还可为针对无渲染算法(例如计算摄影、卷积神经网络、视频处理、科学应用程序等)的指令。为了处理图形渲染指令,处理器6可向GPU 12发出一或多个图形渲染命令发(例如,通过GPU驱动程序22),以致使GPU 12执行图形数据的渲染中的一些或全部。在一些实例中,待渲染的图形数据可包含例如点、线、三角形、四边形、三角形带等图形图元的列表。
GPU 12可经配置以执行图形运算,从而将一或多个图形图元渲染到显示器8。因此,当在处理器6上执行的软件应用中的一者需要图形处理时,处理器6可将图形命令和图形数据提供到GPU 12以用于渲染到显示器8。图形数据可包含(例如)绘制命令、状态信息、图元信息、纹理信息等。在一些情况下,GPU 12可内置有高度并行结构,其提供比处理器6高效的对复杂图形相关运算的处理。举例来说,GPU 12可包含经配置来以并行方式对多个顶点或像素进行运算的多个处理元件,例如着色器单元。在一些情况下,GPU 12的高度并行性质允许GPU 12比使用处理器6直接将场景绘制到显示器8更快速地将图形图像(例如,GUI和二维(2D)和/或三维(3D)图形场景)绘制到显示器8上。
在一些情况下,可将GPU 12集成到计算装置1的母板中。在其它情况下,GPU 12可存在于图形卡上,所述图形卡安装在计算装置1的母板中的端口中,或可以其它方式并入在经配置以与计算装置1互操作的外围装置内。GPU 12可包含一或多个处理器,例如一或多个微处理器、专用集成电路(ASIC)、现场可编程门阵列(FPGA)、数字信号处理器(DSP)或其它等效的集成或离散逻辑电路。GPU 12还可包含一或多个处理器核心,使得GPU 12可被称作多核处理器。
图形存储器40可为GPU 12的一模块。因此,GPU 12可在不使用总线的情况下从图形存储器40读取数据且将数据写入到图形存储器40。换句话说,GPU 12可使用本地存储装置而不是芯片外存储器在本地处理数据。此类图形存储器40可被称作芯片上存储器。这允许GPU 12通过消除GPU 12经由总线读取和写入数据的需要来以更高效的方式操作,其中经由总线操作可经历繁重的总线业务。然而,在一些情况下,GPU 12可不包含单独的存储器,而是经由总线利用系统存储器10。图形存储器40可包含一或多个易失性或非易失性存储器或存储装置,例如,随机存取存储器(RAM)、静态RAM(SRAM)、动态RAM(DRAM)、可擦除可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)、快闪存储器、磁性数据媒体或光学存储媒体。
在一些实例中,GPU 12可将完全形成的图像存储在系统存储器10中。显示处理器14可从系统存储器10检索图像,且输出致使显示器8的像素照亮以显示所述图像的值。显示器8可为计算装置1的显示器,其显示由GPU 12产生的图像内容。显示器8可为液晶显示器(LCD)、有机发光二极管显示器(OLED)、阴极射线管(CRT)显示器、等离子显示器或另一类型的显示装置。
以上述计算装置为例,为了能够全面地对GPU 12硬件性能进评价,在一些示例中,可以通过结合GPU 12的图形渲染管线对GPU 12的性能进行测试,从而能够完全匹配GPU 12中的标准功能,实现对GPU 12性能的全面和客观的评价。参见图2,其示出了本发明实施例提供的一种GPU 12的图形渲染管线2,需要说明的是,该图形渲染管线2是利用GPU 12中的通用渲染核以及固定功能渲染核通过级联形成的逻辑结构,在本发明实施例中,各级也可称为各渲染阶段。具体来说,通用渲染核均可被编程以能够执行与种类繁多的程序相关的处理任务,包括但不限于,线性与非线性数据变换,视频和/或音频数据过滤、建模操作(例如,应用物理定律以确定对象的位置、速率和其他属性)、图形渲染操作(例如,曲面细分着色器、顶点着色器、几何着色器、和/或片元着色器程序)等等;固定功能渲染核则包含经硬连线以执行某些功能的硬件其可经由例如一或多个控制信号而配置以执行不同功能,例如顶点抓取、图元装配、裁剪、光栅化以及混合测试等操作。如图2所示,在图形渲染管线2中,由通用渲染核实现的渲染阶段采用圆角框示意,由固定功能渲染核实现的渲染阶段采用方框示意,上述图形渲染管线2所包括的各级(或称为各渲染阶段)依次为:
顶点获取阶段201,在图2的实例中展示为由固定功能渲染核实现且通常负责将从显存2中抓取图形数据(三角形、线和点)并供应到图形渲染管线2。举例来说,顶点获取阶段201可从显存2中收集高阶表面、图元等的顶点数据,且将顶点数据和属性输出到顶点着色阶段202。
顶点着色阶段202,在图2中展示为由通用渲染核实现,且负责处理所接收顶点数据和属性,并通过每次针对每个顶点实施一组操作来处理顶点数据。
图元装配阶段203,在图2中展示为由固定功能渲染核实现,负责收集顶点并将所述顶点组成几何图元。例如,图元装配阶段203可以配置为将每三个连续的顶点组成为几何图元(即三角形)。在一些实施例中,特定的顶点可以被重复用于连续的几何图元(例如,三角形带中的两个连续的三角形可以共享两个顶点)。
几何着色阶段204,在图2中展示为由通用渲染核实现,接收顶点着色阶段202的输出作为输入,通过高效的几何运算来增删顶点,并输出顶点数据;
剪切阶段205,在图2中展示为由固定功能渲染核实现,负责保留处于视景体内的图元同时剔除处于视景体外的图元,以减轻后续各阶段的计算负担。
光栅化阶段206,在图2中展示为由固定功能渲染核实现,负责准备片段着色阶段207的图元。举例来说,光栅化阶段206可产生若干碎片以供片段着色阶段207进行阴影处理
片段着色阶段207,在图2中展示为由通用渲染核实现,负责由光栅化阶段206接收碎片且产生例如颜色等每像素数据。此外,片元着色阶段207还可执行例如纹理混合和照明模型计算等每像素处理。
混合测试阶段208,在图2中展示为由固定功能渲染核实现,通常负责对像素数据实施多种操作,例如实施透明测试(alpha test)、模板测试(stencil test)、以及将像素数据与对应于与该像素相关的其他片段的其他像素数据混合。当混合测试阶段208已经完成处理像素数据(即输出数据量)时,可以将处理完成的像素数据,例如图像,写入到渲染目标,例如显存2以产生最终结果。
参见图3,其示出了本发明实施例提供的能够应用于前述示例性计算装置1的一种GPU的性能测试方法,该方法可以包括:
S301:分析测试用例集中的每个测试用例程序中GPU相关代码的占比值;
S302:统计测试用例集中的每个测试用例程序在GPU的运行时长以及运行过程中的帧处理量;
S303:对于每个测试用例程序,按照所述GPU的图形渲染管线划分为多个代码模块,并计算各代码模块的权重值;
S304:基于设定的各代码模块对应的影响因子和各代码模块的权重值,以及每个测试用例程序中GPU相关代码的占比值,获取每个测试用例程序在所述测试用例集中对应的权重值;
S305:基于所述测试用例集中的所有测试用例程序在所述测试用例集中对应的权重值、运行时长以及运行过程中的帧处理量确定所述测试用例集针对所述GPU进行性能测试的性能分值。
对于图3所示的技术方案,在具体实施过程中,可以通过计算装置1中的处理器 6执行系统存储器10中的应用程序所包含的指令,通过GPU驱动程序22致使GPU 12按照图3所示的技术方案执行以实现,并且在系统存储器10中还可以包括含有多个测试用例程序的测试用例集。
需要说明的是,由于GPU的细分功能众多,影响性能的流水线细节比较多,进行性能测试的时候需要设计多个测试用例程序,以避免单个测试用例程序统计结果的片面性,因此,可以设置包含有多个测试用例程序的测试用例集。而为实现GPU性能的全面测试和验证,测试用例集中的测试用例程序的数量和所覆盖的功能模块应该尽可能全面,至少包含上述代码模块。同时,测试用例程序中的顶点数目,图元数目和纹理大小应尽可能保持多,这样才有性能测试的意义,处理小量级的顶点数和纹理并不能突显不出不同硬件的差异。
通过图3所示的技术方案,针对测试用例程序中GPU相关代码进行测试,从而减少测试过程中与GPU无关因素的影响,使得最终获得的性能分值更加准确和客观,并且按照图形渲染管线对测试用例程序进行划分并对应计算权重,从而能够体现GPU的图形渲染管线中各硬件部分的主次情况,并且能够覆盖更加全面,是性能分值更有参考性,并且在测试用例集确定之后,仅需要通过一次运算即可确定所有测试用例程序的权重值,后续在GPU上运行过程中不用再重复计算,只需获取对应的运行时长和帧处理量即可,从而还能够节省GPU性能测试的运行时间。
对于图3所示的技术方案,在一些示例中,所述分析测试用例集中的每个测试用例程序中GPU相关代码的占比值,包括:
根据所述GPU相关代码确定所述GPU运行所述测试用例程序时处理的API数量;
统计所述测试用例程序在GPU的运行时长内CPU的指令数;
根据所述GPU运行所述测试用例程序时处理的API数量以及所述测试用例程序在GPU的运行时长内CPU的指令数确定所述测试用例程序中GPU相关代码占所述测试用例程序总代码的比例值。
对于上述示例,需要说明的是,测试用例程序代码中包括与GPU相关的代码以及与GPU不相关的代码,而对于GPU性能测试来说,对于测试用例程序代码中,关注的重点应当是其中与GPU相关的代码。因此,可以通过下式来确定测试用例程序中GPU相关代码的占比值
Figure RE-DEST_PATH_IMAGE001
,也就是测试用例程序中GPU相关代码占所述测试用例程序总代码的比例值:
Figure RE-DEST_PATH_IMAGE002
其中,
Figure 100002_DEST_PATH_IMAGE003
表示所述GPU运行所述测试用例程序时处理的API数量,
Figure 100002_DEST_PATH_IMAGE004
表示所述测试用例程序在GPU的运行时长内CPU的指令数。
对于图3所示的技术方案,在一些示例中,统计测试用例集中的每个测试用例程序在GPU的运行时长以及运行过程中的帧处理量具体可以通过在测试用例程序处理渲染命令的开始执行处和结束处分别添加时间获取函数,从而计算获得GPU的运行时长T,并且可以统计在该运行时长的起止时间内帧缓存中被渲染的帧数量frames。更为详细地,时间单位为微秒,从而可以提供统计结果的精确度和对比的差异性。
对于图3所示的技术方案,在一些示例中,所述对于每个测试用例程序,按照所述GPU的图形渲染管线划分为多个代码模块,可以包括:
针对每个测试用例程序,按照所述GPU的图形渲染管线划分为顶点处理模块、纹理处理模块、后处理模块、着色器模块、缓存操作模块以及剩余模块;其中,所述剩余模块,包括所述测试用例程序中除所述顶点处理模块、所述纹理处理模块、所述后处理模块、所述着色器模块以及所述缓存操作模块之外的剩余代码模块。
可以理解地,上述划分依据与图2所示的图形渲染管线80的结构相对应,在划分完毕后,可以根据测试用例程序特性计算各代码模块的权重值。
基于上述示例,针对上述代码模块,计算各代码模块的权重值,在实施过程中,可以包括:
相应于所述顶点处理模块,根据所述测试用例程序中的顶点数量和图元数量以及所述测试用例集中的顶点总数量和图元总数量确定所述顶点处理模块的权重值;
相应于所述纹理处理模块,根据所述测试用例程序中的纹理数据量、纹理数量和使用的纹理层级数,以及所述测试用例集中的总纹理数据量、纹理总数量和所述GPU能支持的最大纹理层级数确定所述纹理处理模块的权重值;
相应于所述后处理模块,根据所述测试用例程序中渲染图片数据量、像素的数据宽度和启用的ROP操作数量,所述测试用例集中渲染图片的总数据量,所述GPU支持的最大像素数据宽度确定所述后处理模块的权重值;
相应于所述着色器模块,根据所述测试用例程序中使用的着色器类型数量、着色器中内置函数和运算指令数量之和、所述GPU运行所述测试用例程序时处理的API数量以及着色器中所用的内置函数的数量确定所述着色器模块的权重值;
相应于所述缓存操作模块,根据所述测试用例程序中所申请的缓存容量和缓存使用数量,以及所述测试用例集中所申请的缓存总容量和缓存总使用量确定所述缓存操作模块的权重值。
相应于所述剩余模块,根据所述剩余代码模块使用的API数量与所述GPU运行所述测试用例程序时处理的API数量确定所述剩余模块的权重值。
针对上述优选示例,具体来说,对于顶点处理Vertex Process模块来说,顶点处理中主要影响性能的数据为顶点数量、图元数量和图元复杂度。顶点数量和图元数量可以通过横向比较以获取权重值,由于测试用例集中顶点的数量和图元的数量是固定的,因此,分别计算出单个测试用例程序顶点数量和图元数量在整个测试用例集中的占比。图元复杂度则被定义为绘制单个图元的顶点重用率。基于此,依照下式通过顶点数量和图元数量之比求得顶点处理模块的权重值
Figure 100002_DEST_PATH_IMAGE005
为:
Figure 100002_DEST_PATH_IMAGE006
其中,
Figure 100002_DEST_PATH_IMAGE007
表示测试用例程序中图元的数量;
Figure 100002_DEST_PATH_IMAGE008
表示测试用例集中图元总数量;
Figure 100002_DEST_PATH_IMAGE009
表示是测试用例程序中的顶点数量;
Figure 100002_DEST_PATH_IMAGE010
表示测试用例集中的顶点总数量。
对于纹理处理Texture Process模块来说,纹理处理过程中主要影响性能的因素包含纹理的大小、纹理的数量和纹理的层级。纹理大小可以用纹理数据量来表示。纹理的大小和数量可以通过横向对比整个测试用例集的数量以计算占比。纹理层级则可以对比最大支持的层级数量以计算占比。基于此,可以依照下式确定所述纹理处理模块的权重值
Figure 100002_DEST_PATH_IMAGE011
Figure 100002_DEST_PATH_IMAGE012
其中,
Figure 100002_DEST_PATH_IMAGE013
为测试用例程序中的纹理数据量;
Figure 100002_DEST_PATH_IMAGE014
为测试用例程序中使用的纹理数量;
Figure 100002_DEST_PATH_IMAGE015
为测试用例集中的总纹理数据量;
Figure 100002_DEST_PATH_IMAGE016
为测试用例集中的纹理总数量;
Figure 100002_DEST_PATH_IMAGE017
为测试用例程序中使用到的纹理层级数;
Figure 100002_DEST_PATH_IMAGE018
为GPU硬件能够支持的最大纹理层级数。
对于后处理Post Process模块来说,后处理中影响性能的因素主要包含:绘制像素的数量,像素深度和选择的光栅化处理单元(ROP,Raster OPerations unit)种类。像素数量由渲染图像的分辨率或帧缓存framebuffer的尺寸决定。ROP操作中包含深度测试、模版测试、Alpha测试、混合操作、遮挡查询、裁剪测试。像素数量权重因子通过横向对比计算,像素深度权重因子按照所用像素数据宽度和支持的最大相比得到。ROP权重因子可以采用启用的ROP操作占比代替。
Figure 100002_DEST_PATH_IMAGE019
其中:
Figure DEST_PATH_IMAGE020
为测试程序渲染的图片大小;
Figure DEST_PATH_IMAGE021
为测试用例集中渲染照片大小的总和;
Figure DEST_PATH_IMAGE022
为测试程序中像素的数据宽度;
Figure DEST_PATH_IMAGE023
为支持的最大像素数据宽度;
Figure DEST_PATH_IMAGE024
为测试程序中启用的ROP操作数量。
对于着色器shader模块来说,shader程序是在GPU中并行处理的,对GPU性能的影响主要在shader程序的复杂度和运算量上,本发明实施例可以通过两个主要方面进行衡量:一是shader的数量和代码量,而OpenGL中shader一共有5种类型,可以获取shader的类型数量占比和shader代码量在测试用例程序总代码占比。二是shader中使用的内置函数占比。基于内置函数数量和shader中所有代码指令的比值,根据下式可以得到着色器模块的权重值:
Figure DEST_PATH_IMAGE025
其中,
Figure DEST_PATH_IMAGE026
为测试用例程序中使用的shader类型的个数;
Figure DEST_PATH_IMAGE027
为shader中内置函数和运算指令的数量之和;
Figure DEST_PATH_IMAGE028
为shader中使用的内置函数的数量。
对于缓存buffer操作模块来说,buffer操作对性能的影响主要体现在buffer的大小和数量上,通过横向比较以获取权值,具体来说,可以计算单个测试用例程序中buffer的大小和数量在整个测试用例集中的占比以获得缓存操作模块的权重值。
Figure DEST_PATH_IMAGE029
其中,
Figure DEST_PATH_IMAGE030
为测试用例程序中申请的buffer容量;
Figure DEST_PATH_IMAGE031
为测试用例程序中使用的buffer数量;
Figure DEST_PATH_IMAGE032
为测试用例集中申请的buffer总容量;
Figure DEST_PATH_IMAGE033
为测试用例集中使用的buffer总数量。
对于剩余Other模块来说,由于剩余部分在GPU的模块中比较分散,在功能和资源占比上相对较小,因此对整个流水线的影响程度较上面的主要代码模块要小。所以,本发明实施例可以采用API数量在测试用例程序中与GPU相关的全部API的占比表示剩余模块的权重值
Figure RE-145340DEST_PATH_IMAGE034
Figure RE-265743DEST_PATH_IMAGE035
其中,
Figure RE-45480DEST_PATH_IMAGE036
为剩余模块中的API数量。
对于图3所示的技术方案,在一些示例中,所述基于设定的各代码模块对应的影响因子和各代码模块的权重值,以及每个测试用例程序中GPU相关代码的占比值,获取每个测试用例程序在所述测试用例集中对应的权重值,包括:
针对每个测试用例程序,根据下式确定所述测试用例程序在所述测试用例集中对应的权重值:
Figure DEST_PATH_IMAGE036
其中,
Figure DEST_PATH_IMAGE037
表示所述测试用例程序中GPU相关代码的占比值,
Figure DEST_PATH_IMAGE038
表示顶点处理模块对应的影响因子,
Figure DEST_PATH_IMAGE039
表示顶点处理模块的权重值,
Figure DEST_PATH_IMAGE040
表示纹理处理模块对应的影响因子,
Figure DEST_PATH_IMAGE041
表示纹理处理模块的权重值,
Figure DEST_PATH_IMAGE042
表示后处理模块对应的影响因子,
Figure DEST_PATH_IMAGE043
表示后处理模块的权重值,
Figure DEST_PATH_IMAGE044
表示着色器模块对应的影响因子,
Figure DEST_PATH_IMAGE045
表示着色器模块的权重值,
Figure DEST_PATH_IMAGE046
表示缓存操作模块对应的影响因子,
Figure DEST_PATH_IMAGE047
表示缓存操作模块的权重值,
Figure DEST_PATH_IMAGE048
表示剩余模块对应的影响因子,
Figure 594174DEST_PATH_IMAGE049
表示剩余模块的权重值。
对于上述示例,需要说明的是,基于前述示例获得测试用例程序中各代码模块的权重值,那么测试用例程序总体在所述GPU上运行所得到的性能得分可以利用各代码模块按照比例进行加权求和以获得。具体来说,顶点处理、纹理处理、后处理中的像素操作以及着色器shader处理在整个GPU硬件中资源占比以及应用的使用频率都较高,会影响整个管线的完整度且相互关联,因此,以上代码模块对应的影响因子均优选地设置为0.2。缓存buffer操作模块由于需要进行数据传输,与总线及GPU外部存储的交互密切,受CPU和数据总线的影响大,受GPU性能的影响较小,因此,该部分的代码模块对应的影响因子优选地设置为0.1。由于其他GPU操作的API为功能使用频率低、对流水线整体的通路影响作用小,因此,剩余模块对应的影响因子优选地设为0.1。
对于图3所示的技术方案,在一些示例中,所述基于所述测试用例集中的所有测试用例程序在所述测试用例集中对应的权重值、运行时长以及运行过程中的帧处理量确定所述测试用例集针对所述GPU进行性能测试的性能分值,包括:
针对所述测试用例集中的所有测试用例程序,按照下式确定所述测试用例集针对所述GPU进行性能测试的性能分值
Figure DEST_PATH_IMAGE050
Figure 698265DEST_PATH_IMAGE051
其中,i表示测试用例程序标号, n表示所述测试用例集中的测试用例程序总数,
Figure DEST_PATH_IMAGE052
表示第i个测试用例程序在GPU的运行时长,
Figure 415685DEST_PATH_IMAGE053
表示第i个测试用例程序运行过程中的帧处理量,
Figure DEST_PATH_IMAGE054
表示第i个测试用例程序在所述测试用例集中对应的权重值。
对于上述示例,具体来说,基于测试用例集中所有测试用例程序对应的权重值以及前述统计的运行时间和渲染帧数,可以通过运行时间除以帧数就能够计算出有效的单帧耗费时长,再乘以对应的测试用例程序的权重值,就能够计算出单个测试用例程序的中间结果值,用该中间结果可以作为GPU在该测试用例程序中的得分值。将测试集中所有测试程序的得分值相加得到整个测试用例集针对GPU进行性能测试所得到的性能分值。
结合前述附图、方案及示例,参见图4,其示出了本发明实施例提供的一种GPU的性能测试装置40,该装置40可以通过前述计算装置1以实现,所述装置40包括:分析部分401、统计部分402、划分部分403、计算部分404、获取部分405以及确定部分406;其中,
所述分析部分401,经配置为分析测试用例集中的每个测试用例程序中GPU相关代码的占比值;
所述统计部分402,经配置为统计测试用例集中的每个测试用例程序在GPU的运行时长以及运行过程中的帧处理量;
所述划分部分403,经配置为对于每个测试用例程序,按照所述GPU的图形渲染管线划分为多个代码模块;
所述计算部分404,经配置为计算各代码模块的权重值;
所述获取部分405,经配置为基于设定的各代码模块对应的影响因子和各代码模块的权重值,以及每个测试用例程序中GPU相关代码的占比值,获取每个测试用例程序在所述测试用例集中对应的权重值;
所述确定部分406,经配置为基于所述测试用例集中的所有测试用例程序在所述测试用例集中对应的权重值、运行时长以及运行过程中的帧处理量确定所述测试用例集针对所述GPU进行性能测试的性能分值。
在一些示例中,所述划分部分403,经配置为:
针对每个测试用例程序,按照所述GPU的图形渲染管线划分为顶点处理模块、纹理处理模块、后处理模块、着色器模块、缓存操作模块以及剩余模块;其中,所述剩余模块,包括所述测试用例程序中除所述顶点处理模块、所述纹理处理模块、所述后处理模块、所述着色器模块以及所述缓存操作模块之外的剩余代码模块。
在一些示例中,所述计算部分404,经配置为:
相应于所述顶点处理模块,根据所述测试用例程序中的顶点数量和图元数量以及所述测试用例集中的顶点总数量和图元总数量确定所述顶点处理模块的权重值;
相应于所述纹理处理模块,根据所述测试用例程序中的纹理数据量、纹理数量和使用的纹理层级数,以及所述测试用例集中的总纹理数据量、纹理总数量和所述GPU能支持的最大纹理层级数确定所述纹理处理模块的权重值;
相应于所述后处理模块,根据所述测试用例程序中渲染图片数据量、像素的数据宽度和启用的光栅化处理单元ROP操作数量,所述测试用例集中渲染图片的总数据量,所述GPU支持的最大像素数据宽度确定所述后处理模块的权重值;
相应于所述缓存操作模块,根据所述测试用例程序中所申请的缓存容量和缓存使用数量,以及所述测试用例集中所申请的缓存总容量和缓存总使用量确定所述缓存操作模块的权重值。
在一些示例中,所述分析部分401,经配置为:
根据所述GPU相关代码确定所述GPU运行所述测试用例程序时处理的API数量;
统计所述测试用例程序在GPU的运行时长内CPU的指令数;
根据所述GPU运行所述测试用例程序时处理的API数量以及所述测试用例程序在GPU的运行时长内CPU的指令数确定所述测试用例程序中GPU相关代码占所述测试用例程序总代码的比例值。
在一些示例中,所述计算部分404,经配置为:
相应于所述着色器模块,根据所述测试用例程序中使用的着色器类型数量、着色器中内置函数和运算指令数量之和、所述GPU运行所述测试用例程序时处理的API数量以及着色器中所用的内置函数的数量确定所述着色器模块的权重值;
相应于所述剩余模块,根据所述剩余代码模块使用的API数量与所述GPU运行所述测试用例程序时处理的API数量确定所述剩余模块的权重值。
在一些示例中,所述获取部分405,经配置为:
针对每个测试用例程序,根据下式确定所述测试用例程序在所述测试用例集中对应的权重值:
Figure DEST_PATH_IMAGE056
其中,
Figure 27539DEST_PATH_IMAGE037
表示所述测试用例程序中GPU相关代码的占比值,
Figure DEST_PATH_IMAGE057
表示顶点处理模块对应的影响因子,
Figure 982856DEST_PATH_IMAGE039
表示顶点处理模块的权重值,
Figure 336477DEST_PATH_IMAGE040
表示纹理处理模块对应的影响因子,
Figure 259303DEST_PATH_IMAGE041
表示纹理处理模块的权重值,
Figure DEST_PATH_IMAGE058
表示后处理模块对应的影响因子,
Figure 395886DEST_PATH_IMAGE043
表示后处理模块的权重值,
Figure 595923DEST_PATH_IMAGE044
表示着色器模块对应的影响因子,
Figure 746544DEST_PATH_IMAGE045
表示着色器模块的权重值,
Figure DEST_PATH_IMAGE059
表示缓存操作模块对应的影响因子,
Figure 704136DEST_PATH_IMAGE047
表示缓存操作模块的权重值,
Figure DEST_PATH_IMAGE060
表示剩余模块对应的影响因子,
Figure 628098DEST_PATH_IMAGE049
表示剩余模块的权重值。
在一些示例中,所述确定部分406,经配置为:
针对所述测试用例集中的所有测试用例程序,按照下式确定所述测试用例集针对所述GPU进行性能测试的性能分值
Figure 682642DEST_PATH_IMAGE050
Figure DEST_PATH_IMAGE061
其中,i表示测试用例程序标号, n表示所述测试用例集中的测试用例程序总数,
Figure 253432DEST_PATH_IMAGE052
表示第i个测试用例程序在GPU的运行时长,
Figure 26216DEST_PATH_IMAGE053
表示第i个测试用例程序运行过程中的帧处理量,
Figure DEST_PATH_IMAGE062
表示第i个测试用例程序在所述测试用例集中对应的权重值。
可以理解地,在本实施例中,“部分”可以是部分电路、部分处理器、部分程序或软件等等,当然也可以是单元,还可以是模块也可以是非模块化的。
另外,在本实施例中的各组成部分可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。
所述集成的单元如果以软件功能模块的形式实现并非作为独立的产品进行销售或使用时,那么可将功能作为一或多个指令或代码存储在计算机可读媒体上或经由计算机可读媒体传输。计算机可读媒体可包含计算机数据存储媒体或通信媒体,通信媒体包含促进将计算机程序从一处传递到另一处的任何媒体。数据存储媒体可为可由一或多个计算机或一或多个处理器存取以检索用于实施本发明中描述的技术的指令、代码和/或数据结构的任何可用媒体。举例来说且非限制,此类计算机可读媒体可包括U盘、移动硬盘、RAM、ROM、EEPROM、CD-ROM或其它光盘存储装置、磁盘存储装置或其它磁性存储装置,或可用于运载或存储呈指令或数据结构的形式的所要程序代码且可由计算机存取的任何其它媒体。并且,任何连接被恰当地称作计算机可读媒体。举例来说,如果使用同轴电缆、光纤电缆、双绞线、数字订户线(DSL)或例如红外线、无线电和微波等无线技术从网站、服务器或其它远程源传输软件,那么同轴电缆、光纤电缆、双绞线、DSL或例如红外线、无线电和微波等无线技术包含于媒体的定义中。如本文中所使用,磁盘和光盘包含压缩光盘(CD)、激光光盘、光学光盘、数字多功能光盘(DVD)、软性磁盘和蓝光光盘,其中磁盘通常以磁性方式再现数据,而光盘利用激光以光学方式再现数据。以上各项的组合也应包含在计算机可读媒体的范围内。
代码可由一或多个处理器执行,所述一或多个处理器例如是一或多个数字信号处理器(DSP)、通用微处理器、专用集成电路(ASIC)、现场可编程逻辑阵列(FPGA)或其它等效的可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。因此,如本文中所使用的术语“处理器”和“处理单元”可指前述结构或适于实施本文中所描述的技术的任何其它结构中的任一者。另外,在一些方面中,本文中所描述的功能性可在经配置用于编码和解码的专用硬件和/或软件模块内提供,或者并入在组合式编解码器中。而且,所述技术可完全实施于一或多个电路或逻辑元件中。
本发明实施例的技术可实施于各种各样的装置或设备中,所述装置或设备包含无线手持机、集成电路(IC)或一组IC(即,芯片组)。本发明中描述各种组件、模块或单元是为了强调经配置以执行所公开的技术的装置的功能方面,但未必需要由不同硬件单元实现。实际上,如上文所描述,各种单元可结合合适的软件和/或固件组合在编码解码器硬件单元中,或者通过互操作硬件单元的集合来提供,所述硬件单元包含如上文所描述的一或多个处理器。
已描述了本发明的各种方面。这些和其它实施例在所附权利要求书的范围内。需要说明的是:本发明实施例所记载的技术方案之间,在不冲突的情况下,可以任意组合。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以所述权利要求的保护范围为准。

Claims (10)

1.一种GPU的性能测试方法,其特征在于,所述方法包括:
分析测试用例集中的每个测试用例程序中GPU相关代码的占比值;
统计测试用例集中的每个测试用例程序在GPU的运行时长以及运行过程中的帧处理量;
对于每个测试用例程序,按照所述GPU的图形渲染管线划分为多个代码模块,并计算各代码模块的权重值;
基于设定的各代码模块对应的影响因子和各代码模块的权重值,以及每个测试用例程序中GPU相关代码的占比值,获取每个测试用例程序在所述测试用例集中对应的权重值;
基于所述测试用例集中的所有测试用例程序在所述测试用例集中对应的权重值、运行时长以及运行过程中的帧处理量确定所述测试用例集针对所述GPU进行性能测试的性能分值。
2.根据权利要求1所述的方法,其特征在于,所述对于每个测试用例程序,按照所述GPU的图形渲染管线划分为多个代码模块,包括:
针对每个测试用例程序,按照所述GPU的图形渲染管线划分为顶点处理模块、纹理处理模块、后处理模块、着色器模块、缓存操作模块以及剩余模块;其中,所述剩余模块,包括所述测试用例程序中除所述顶点处理模块、所述纹理处理模块、所述后处理模块、所述着色器模块以及所述缓存操作模块之外的剩余代码模块。
3.根据权利要求2所述的方法,其特征在于,所述计算各代码模块的权重值,包括:
相应于所述顶点处理模块,根据所述测试用例程序中的顶点数量和图元数量以及所述测试用例集中的顶点总数量和图元总数量确定所述顶点处理模块的权重值;
相应于所述纹理处理模块,根据所述测试用例程序中的纹理数据量、纹理数量和使用的纹理层级数,以及所述测试用例集中的总纹理数据量、纹理总数量和所述GPU能支持的最大纹理层级数确定所述纹理处理模块的权重值;
相应于所述后处理模块,根据所述测试用例程序中渲染图片数据量、像素的数据宽度和启用的光栅化处理单元ROP操作数量,所述测试用例集中渲染图片的总数据量,所述GPU支持的最大像素数据宽度确定所述后处理模块的权重值;
相应于所述缓存操作模块,根据所述测试用例程序中所申请的缓存容量和缓存使用数量,以及所述测试用例集中所申请的缓存总容量和缓存总使用量确定所述缓存操作模块的权重值。
4.根据权利要求1或2所述的方法,其特征在于,所述分析测试用例集中的每个测试用例程序中GPU相关代码的占比值,包括:
根据所述GPU相关代码确定所述GPU运行所述测试用例程序时处理的API数量;
统计所述测试用例程序在GPU的运行时长内CPU的指令数;
根据所述GPU运行所述测试用例程序时处理的API数量以及所述测试用例程序在GPU的运行时长内CPU的指令数确定所述测试用例程序中GPU相关代码占所述测试用例程序总代码的比例值。
5.根据权利要求4所述的方法,其特征在于,所述计算各代码模块的权重值,包括:
相应于所述着色器模块,根据所述测试用例程序中使用的着色器类型数量、着色器中内置函数和运算指令数量之和、所述GPU运行所述测试用例程序时处理的API数量以及着色器中所用的内置函数的数量确定所述着色器模块的权重值;
相应于所述剩余模块,根据所述剩余代码模块使用的API数量与所述GPU运行所述测试用例程序时处理的API数量确定所述剩余模块的权重值。
6.根据权利要求2所述的方法,其特征在于,所述基于设定的各代码模块对应的影响因子和各代码模块的权重值,以及每个测试用例程序中GPU相关代码的占比值,获取每个测试用例程序在所述测试用例集中对应的权重值,包括:
针对每个测试用例程序,根据下式确定所述测试用例程序在所述测试用例集中对应的权重值:
Figure DEST_PATH_IMAGE001
其中,
Figure DEST_PATH_IMAGE002
表示所述测试用例程序中GPU相关代码的占比值,
Figure DEST_PATH_IMAGE003
表示顶点处理模块对应的影响因子,
Figure DEST_PATH_IMAGE004
表示顶点处理模块的权重值,
Figure DEST_PATH_IMAGE005
表示纹理处理模块对应的影响因子,
Figure DEST_PATH_IMAGE006
表示纹理处理模块的权重值,
Figure DEST_PATH_IMAGE007
表示后处理模块对应的影响因子,
Figure DEST_PATH_IMAGE008
表示后处理模块的权重值,
Figure DEST_PATH_IMAGE009
表示着色器模块对应的影响因子,
Figure DEST_PATH_IMAGE010
表示着色器模块的权重值,
Figure DEST_PATH_IMAGE011
表示缓存操作模块对应的影响因子,
Figure DEST_PATH_IMAGE012
表示缓存操作模块的权重值,
Figure DEST_PATH_IMAGE013
表示剩余模块对应的影响因子,
Figure DEST_PATH_IMAGE014
表示剩余模块的权重值。
7.根据权利要求1所述的方法,其特征在于,所述基于所述测试用例集中的所有测试用例程序在所述测试用例集中对应的权重值、运行时长以及运行过程中的帧处理量确定所述测试用例集针对所述GPU进行性能测试的性能分值,包括:
针对所述测试用例集中的所有测试用例程序,按照下式确定所述测试用例集针对所述GPU进行性能测试的性能分值
Figure DEST_PATH_IMAGE015
Figure DEST_PATH_IMAGE016
其中,i表示测试用例程序标号, n表示所述测试用例集中的测试用例程序总数,
Figure DEST_PATH_IMAGE017
表示第i个测试用例程序在GPU的运行时长,
Figure DEST_PATH_IMAGE018
表示第i个测试用例程序运行过程中的帧处理量,
Figure DEST_PATH_IMAGE019
表示第i个测试用例程序在所述测试用例集中对应的权重值。
8.一种GPU的性能测试装置,其特征在于,所述装置包括:分析部分、统计部分、划分部分、计算部分、获取部分以及确定部分;其中,
所述分析部分,经配置为分析测试用例集中的每个测试用例程序中GPU相关代码的占比值;
所述统计部分,经配置为统计测试用例集中的每个测试用例程序在GPU的运行时长以及运行过程中的帧处理量;
所述划分部分,经配置为对于每个测试用例程序,按照所述GPU的图形渲染管线划分为多个代码模块;
所述计算部分,经配置为计算各代码模块的权重值;
所述获取部分,经配置为基于设定的各代码模块对应的影响因子和各代码模块的权重值,以及每个测试用例程序中GPU相关代码的占比值,获取每个测试用例程序在所述测试用例集中对应的权重值;
所述确定部分,经配置为基于所述测试用例集中的所有测试用例程序在所述测试用例集中对应的权重值、运行时长以及运行过程中的帧处理量确定所述测试用例集针对所述GPU进行性能测试的性能分值。
9.一种GPU的性能测试装置,其特征在于,所述装置包括:存储器和处理器;其中,
所述存储器存储有GPU的性能测试程序,以及包含有多个测试用例程序的测试用例集;所述处理器,经配置为根据所述测试用例集运行所述GPU的性能测试程序以执行权利要求1至7任一项所述的GPU的性能测试方法的步骤。
10.一种计算机存储介质,其特征在于,所述计算机存储介质存储有GPU的性能测试程序,所述GPU的性能测试程序被至少一个处理器执行时实现权利要求1至7任一项所述的GPU的性能测试方法的步骤。
CN202010233999.XA 2020-03-30 2020-03-30 一种gpu的性能测试方法、装置及计算机存储介质 Active CN111367780B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010233999.XA CN111367780B (zh) 2020-03-30 2020-03-30 一种gpu的性能测试方法、装置及计算机存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010233999.XA CN111367780B (zh) 2020-03-30 2020-03-30 一种gpu的性能测试方法、装置及计算机存储介质

Publications (2)

Publication Number Publication Date
CN111367780A true CN111367780A (zh) 2020-07-03
CN111367780B CN111367780B (zh) 2024-02-09

Family

ID=71205552

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010233999.XA Active CN111367780B (zh) 2020-03-30 2020-03-30 一种gpu的性能测试方法、装置及计算机存储介质

Country Status (1)

Country Link
CN (1) CN111367780B (zh)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114255155A (zh) * 2022-02-24 2022-03-29 荣耀终端有限公司 一种图形处理器测试方法和电子设备
CN114503084A (zh) * 2020-08-27 2022-05-13 清华大学 并行程序可扩展性瓶颈检测方法和计算装置
CN115033434A (zh) * 2022-06-07 2022-09-09 海光信息技术股份有限公司 一种内核性能理论值计算方法、装置及存储介质
CN115409687A (zh) * 2022-10-31 2022-11-29 北京麟卓信息科技有限公司 一种基于显示缓冲区合成的渲染差异检测方法
CN116089187A (zh) * 2022-12-30 2023-05-09 摩尔线程智能科技(北京)有限责任公司 一种gpu测试系统、电子设备和存储介质

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104035781A (zh) * 2014-06-27 2014-09-10 北京航空航天大学 一种快速开发异构并行程序的方法
US20170084043A1 (en) * 2015-09-23 2017-03-23 Qualcomm Incorporated Dynamically switching between late depth testing and conservative depth testing
CN110879776A (zh) * 2018-09-06 2020-03-13 北京京东尚科信息技术有限公司 一种测试用例的生成方法和装置

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104035781A (zh) * 2014-06-27 2014-09-10 北京航空航天大学 一种快速开发异构并行程序的方法
US20170084043A1 (en) * 2015-09-23 2017-03-23 Qualcomm Incorporated Dynamically switching between late depth testing and conservative depth testing
CN110879776A (zh) * 2018-09-06 2020-03-13 北京京东尚科信息技术有限公司 一种测试用例的生成方法和装置

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
于平;: "基于GPU加速的辐射度光照算法的研究及应用" *

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114503084A (zh) * 2020-08-27 2022-05-13 清华大学 并行程序可扩展性瓶颈检测方法和计算装置
CN114255155A (zh) * 2022-02-24 2022-03-29 荣耀终端有限公司 一种图形处理器测试方法和电子设备
CN114255155B (zh) * 2022-02-24 2022-07-26 荣耀终端有限公司 一种图形处理器测试方法和电子设备
CN115033434A (zh) * 2022-06-07 2022-09-09 海光信息技术股份有限公司 一种内核性能理论值计算方法、装置及存储介质
CN115033434B (zh) * 2022-06-07 2023-05-26 海光信息技术股份有限公司 一种内核性能理论值计算方法、装置及存储介质
CN115409687A (zh) * 2022-10-31 2022-11-29 北京麟卓信息科技有限公司 一种基于显示缓冲区合成的渲染差异检测方法
CN116089187A (zh) * 2022-12-30 2023-05-09 摩尔线程智能科技(北京)有限责任公司 一种gpu测试系统、电子设备和存储介质
CN116089187B (zh) * 2022-12-30 2024-02-02 摩尔线程智能科技(北京)有限责任公司 一种gpu测试系统、电子设备和存储介质

Also Published As

Publication number Publication date
CN111367780B (zh) 2024-02-09

Similar Documents

Publication Publication Date Title
CN111367780B (zh) 一种gpu的性能测试方法、装置及计算机存储介质
US10164459B2 (en) Selective rasterization
CN108027956B (zh) 后期深度测试与保守深度测试之间的动态切换
KR101711775B1 (ko) 그래픽스 프로세싱을 위한 그래픽스 메모리 로드 마스크
CN110930497B (zh) 一种全局光照相交加速方法、装置及计算机存储介质
US10762700B2 (en) Generating random sampling distributions using stochastic rasterization
CN112801855B (zh) 基于图元的渲染任务调度的方法、装置及存储介质
US9852539B2 (en) Single pass surface splatting
US9805495B2 (en) Single pass bounding volume hierarchy rasterization
EP2804150A1 (en) Texture address mode discarding filter taps
CN105913481B (zh) 阴影渲染装置及其控制方法
CN112233216A (zh) 游戏图像处理方法、装置及电子设备
CN108780582B (zh) 可见性信息修改
CN111127299A (zh) 一种加速光栅化遍历的方法、装置及计算机存储介质
CN111989715A (zh) 用于与硬件实例化兼容的gpu的压缩可见性状态
CN111161391B (zh) 一种生成追踪路径的方法、装置及计算机存储介质
US20190087930A1 (en) Adding metadata to texture surfaces for bandwidth compression
KR20230010672A (ko) 데이터 압축의 방법 및 장치
CN110928610B (zh) 验证着色器函数的方法、装置及计算机存储介质
CN111179151A (zh) 一种提高图形渲染效率的方法、装置及计算机存储介质
CN117395434B (zh) 硬件编解码调试方法、装置、设备及存储介质
CN117435521B (zh) 基于gpu渲染的纹理显存映射方法、装置及介质
CN111127620B (zh) 一种生成半球域采样模式的方法、装置及计算机存储介质
US20240203030A1 (en) 3d model rendering method and apparatus, electronic device, and storage medium
WO2024118109A1 (en) Apparatus and method for real-time volumetric rendering of dynamic particles

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
CB02 Change of applicant information

Address after: Room 301, Building D, Yeda Science and Technology Park, No. 300 Changjiang Road, Yantai Area, Yantai Free Trade Zone, Shandong Province, 265503

Applicant after: Xi'an Xintong Semiconductor Technology Co.,Ltd.

Address before: Room 21101, 11 / F, unit 2, building 1, Wangdu, No. 3, zhangbayi Road, Zhangba Street office, hi tech Zone, Xi'an City, Shaanxi Province

Applicant before: Xi'an Xintong Semiconductor Technology Co.,Ltd.

CB02 Change of applicant information
GR01 Patent grant
GR01 Patent grant