科技魔方

Meta推出Quest开发优化工具RenderDoc Meta Fork

AR/VR

2023年01月13日

  图形是任何VR体验的核心元素。当它们平滑和一致地渲染时,图形可以帮助实现更优的用户体验,并防止打破沉浸感。

  RenderDoc多年来一直是业界领先的图形调试器,而现在Meta已经开始维护自己的RenderDoc Fork,从而帮助你优化MetaQuest的图形。这家公司指出,RenderDoc Meta Fork是每位Meta Quest开发者工具包中应有的工具,因为它可以用于优化应用和体验,并诊断其他工具无法解决的技术问题。对于依赖性能的图形复杂应用,这是优化性能以给用户最流畅的体验的重要工具。

  要开始使用新的RenderDoc Meta Fork,你首先需要卸载以前版本的RenderDoc forOculus,然后在这里下载RenderDocMeta Forck。

  下面的博文将介绍RenderDoc Meta Fork可以帮助你优化应用图形的关键功能:

  获取并加载capture

  使用RenderDoc Meta Fork优化图形的第一步是获取并加载capture。这样做可以为你使用下面列出的功能提供灵活的基础。更多关于获取并加载capture的信息请访问这个页面。

  渲染阶段trace

  由于Meta Quest GPU的Tile架构,曲面的渲染划分为多个区域,然后分阶段执行。通过执行渲染阶段trace并在Tile Timeline视图中查看其输出,你可以识别隐藏状态,如曲面的渲染模式或执行的bin数。

  时间线的第一行显示了帧期间连续渲染到的每个曲面。第一行中的每个块表示一个曲面并显示相关数据。

  时间线的第二行显示活动的bin。Render/StoreColor/LoadColor/StoreDS/LoadDS渲染阶段可以属于一个bin,并且如果曲面在启用binning模式的情况下进行渲染,则其上方可以有一个额外的bin行。

  时间线的第三行列出了给定曲面每个Tile的所有渲染阶段。这为每个渲染阶段提供了精确的计时(以微秒为单位),并使用颜色键和标签指示特定的渲染阶段。更多关于关如何执行渲染阶段trace的信息请访问这个页面。

  绘制调用trace

  绘制调用trace显示与性能计数器查看器中的每个绘制调用相关的用户选择度量。

  Renderdoc Meta Fork的性能计数器中目前有50个用户选择的指标可用。

  最重要的度量之一是GPU时钟度量。当RenderDoc Meta Fork查询性能计数器时,绘制调用一个接一个地执行,没有并行性。对于GPU因绘制调用而执行操作的每个周期,GPU时钟计数器将递增1。

  占用更多存储bin的绘制调用自然会有更大的GPU时钟度量,因为一次处理一个存储bin。GPU时钟度量是绘制调用延迟的度量,而不是吞吐量。在正常的执行环境中,设备将使用各种延迟隐藏技术,而这可能导致许多操作的重叠。所以,重要的是不要过度索引GPU时钟度量,因为延迟隐藏技术对于实现应用的高性能同样至关重要。

  绘制调用trace返回的指标可以帮助开发者了解应用程序的图形性能,并帮助他们隔离可能成为优化目标的问题。更多关于如何执行绘制调用trace的信息请访问这个页面。

  检索Vulkan着色器统计信息

  RenderDoc Meta Fork通过Vulkan扩展KHR_pipeline_executable_properties提供对Meta Quest着色器统计的访问。RenderDoc Meta Fork将所述扩展实现为着色器模块面板中的着色器反汇编选项,所以不需要编写代码来检索它们。

  RenderDoc Meta Fork中目前有18个着色器统计信息可用。

  当涉及到图形性能时,着色器的使用成本可能很高。通过访问Vulkan着色器统计数据,你可以获得指令和寄存器数量的信息,并在必要时进行优化。它同时返回了其他统计数据。这个页面提供了关于如何优化它们中的大多数的性能的指导。另外,更多关于如何检索Vulkan着色器统计信息的更多信息请访问这个页面。

  Meta最后总结道,通过RenderDoc Meta Fork,你可以利用多种功能来调试和优化图形,而了解所述功能的组合方式可以提高应用程序的质量,并为优化未来项目提供框架。

+1

来源:映维网

推荐文章