英特尔GPU性能监测输出的解释

25

有没有人能够解释一下intel_gpu_top的输出结果?特别是,什么是任务GAMVS等(参考man手册并没有太大帮助)。

位流繁忙是什么意思?它似乎总是为零...

               render busy:  45%: █████████                              render space: 83/131072
            bitstream busy:   0%:                                     bitstream space: 0/131072
              blitter busy:   0%:                                       blitter space: 0/131072

                      task  percent busy
                       GAM:  43%: ████████▋               vert fetch: 0 (0/sec)
                        VS:  35%: ███████                 prim fetch: 0 (0/sec)
                        CL:  33%: ██████▋              VS invocations: 2101845324 (1427552/sec)
                        SF:  33%: ██████▋              GS invocations: 0 (0/sec)
                        VF:  33%: ██████▋                   GS prims: 0 (0/sec)
                      GAFS:  33%: ██████▋              CL invocations: 701123988 (475776/sec)
                       SOL:  32%: ██████▌                   CL prims: 701708489 (475888/sec)
                        GS:  32%: ██████▌              PS invocations: 1254669239424 (116548992/sec)
                        DS:  32%: ██████▌              PS depth pass: 604287310764 (222384008/sec)
                       TDG:   2%:                     
                      URBM:   2%:                     
                      GAFM:   1%:                     
                        HS:   0%:                      
                       SVG:   0%:                      
                       VFE:   0%:                      
1个回答

30

我也很好奇,所以这里只能从参考手册中找到一些东西。还有值得注意的是intel-gpu-tools source,特别是lib/instdone.c,该文件描述了所有Intel GPU模型中可能出现的内容。 这个补丁在翻译所有这些首字母缩略词时也非常有帮助!

有些可能是错误的,如果有更了解的人能够发表意见,我会很感激!随着我学习这些知识,我会回来更新答案。

首先,右侧的三行:

  • render space 可能用于常规3D操作。
  • bitstream 部分是指处理媒体解码硬件加速的BSD (Bit-Stream Decoder),但它并未出现在我的GPU上(Skylake HD 530),因此可能未启用/不可见于每个地方。
  • blitter 在vol. 11中有描述,似乎负责2D操作(blitting)的硬件加速。

固定功能(FF)管线单元(老式GPU特性):

  • VF:Vertex Fetcher(vol. 1),3D管线中第一个FF单元,负责从内存中获取顶点数据。
  • VS:Vertex Shader(vol.1),在GPU绘制每个图元的顶点时计算一些内容。在GPU上是相当标准的操作。
  • HS:Hull Shader
  • TE:Tessellation Engine
  • DS:Domain Shader
  • GS:Geometry Shader
  • SOL:流输出逻辑
  • CL:剪辑单元
  • SF:条带和扇形(第1卷),FF单元的主要功能是将基本拓扑结构(如条带和扇形)分解为基本形体或对象。

用于线程和管道管理的单元,用于FF单元和GPGPU(有关所有这些工作方式的“Intel开源高清图形编程人员手册”的详细信息,请参见此处):

  • CS:命令流处理器(第1卷),图形处理引擎的功能单元,获取命令、解析命令并将其路由到适当的管道。
  • TDG:线程调度器
  • VFE:视频前端
  • TSG:线程生成器
  • URBM:统一返回缓冲区管理器

其他内容:

  • GAM:请参见GFX页面行走器(第5卷),也称为内存仲裁器,与GPU如何跟踪其内存页面有关,似乎与TLB(另请参见SLAT)为RAM所做的工作非常相似。
  • SDE:南显示引擎;根据第12卷,“南显示引擎支持热插拔检测、GPIO、GMBUS、面板电源序列和背光调制”。

4
位流(bitstream)与英特尔的Quick Sync有关,即用于视频硬件解码/编码的技术。为什么呢?在我的HD3000显卡上(搭载i3-3217U),使用最新版本的FFmpeg(启用VAAPI以利用英特尔的Quick Sync),当使用CPU进行1080p H264视频的基准解码时,大约只有180帧每秒的“位流”数量很低,CPU使用率几乎达到所有核心的100%。切换到GPU硬件解码后,帧速率将达到约350,"位流"数量会增加,但是CPU使用率相对较低。 - Jerry Tian
啊,谢谢!在你让我意识到它不仅限于处理音频后,我能够找到更多的信息。我已经更新了答案! - F.X.

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接