MicroProfiler 包括多个模式,这可以帮助您以不同的方式视觉化您的体验性能特性。 在使用 CtrlAltF6 ( ⌘ 1> ⌥1> 3> F63> ) 时,使用 6> 模式6> 菜单切
框架模式
最基本的模式, 框架模式 ,显示一个条形从右侧(最最近 / 近期)到左侧流动的框架。每个框架的高度都表示它完成框架所需的毫秒(秒)。在框架上悬停以获得有关 CPU 和GPU 使用的基本信息。
橙色条表示在 Jobs Wall Time 超过 Render Wall Time 的框架。 在这些框架中,至少一个工作线程,例如运行脚本、计算物理和播放动画,在运行主要渲染线程时需要更长时间。
如果体验不能达到您的框架时间目标并且有大量的橙色框架,常见原因是脚本、物理和动画。请参阅提高性能。
蓝色条表示在 渲染墙壁时间 超过 工作墙时间 的框架。 在这些框架中,主要渲染线程花费了更多时间 than 任何工作线程。
如果体验不能达到您的框架时间目标并且有大量蓝色框架,那么这表明着一个渲染瓶颈。常见原因是过度的对象密度、对象移动和照明。请参阅改善性能。
红色条表示两个条件是真的:
- 渲染墙壁时间 超过 工作墙壁时间 * GPU 等待时间 大于 2.5 毫秒
红色条纹比橙色和蓝色少见,通常是由过度的对象复杂性、材质大小和视觉效果导致的。优化与蓝色条纹相似。请参阅改善性能。
在框架的尽头,小的体验务可以时常打乱 工作墙时间 和 渲染墙时间 ,这是另一个理由要更加注意框架的 时间 而不是颜色。 没有"良好"的框架颜色可供选择。 混合橙色、
在框架模式中,使用 CtrlP (⌘P) 暂停微型分析器,发射 2> 详细模式2> 。
详细模式
除了从框架模式的条图外,详细模式还会添加彩色时间线,显示每个任务的标签。
指在另一个标签下直接出现的标签,表示作为高级任务的一部分执行的任务。
与父任务不同,您通常想要调查最不高效的子任务;父任务不能少于其子任务的总和。
滚动缩放时间表在内部或外部。 与时间表顶部的毫秒标签结合,您可以获得一个绝对时间感知任务所需的时间,但也可以与其他任务相对时间感知。
条图上的绿色渐变指示当前在时间线上可见的框架数量—您的缩放等级别。 单击左键在框架条上跳转到该位置在时间线上。
您可能需要调整您的缩放等级别,但将鼠标悬停在条件上,会突出时间轴上的框架。浅灰色的线条显示框架。
左击并拖动以捕捉时间轴。在有许多CPU核心的机器上,您可能需要向上或向下捕捉一些来找到主线程或工作线程执行特定任务。
右击标签可以将时间轴缩放到该任务的持续时间。
单击左标签,将其添加到右下角的条形图中。图形显示任务每个框架的时间。使用此图形,您可以测试游戏中的某些任务的性能。当你完成时,右击图形以隐藏它。
如果信息量过多,请将鼠标悬停在标签上找到其组。然后使用群组菜单过滤时间线索到一个或多个群组,例如物理或渲染。
计时器模式
计时模式 是一个替换的方法来在详细视查看中视觉化数据:作为处理时间和调用次数为标签列的列表。在某些列中,横向条图可以帮助您发现最繁忙的任务。
控制与详细视查看相似:
- 左击并按住来抓住并向上抓住。
- 单击左键以将标签添加到右下角的线图中。
- 使用 群组 菜单过滤列表。
- 使用 计时器 菜单来定制栏目。
计数器模式
计数器模式是一个长度为各个任务的实例数和内存使用率(以字节为单位)的数据表。
- 与细节视查看类似,左击并按住来抬起和放下。
- 在 Graph 栏中单击鼠标左键,添加一个小型使用图形,其中最小值和最大值。再次单击图形以展开它。
- 右击图形以关闭它。
- 您不能过滤此查看,但您可以单击左键(例如,memory)以折叠它。
虽然开发者控制模式可能有用,但开发者控制器是识别记忆问题的最佳方法。您可能还会发现网站UI中的x射线视图有助于识别问题的记忆分配时间。
隐藏模式
隐藏模式使 MicroProfiler 菜单打开,但隐藏条图。它有助于减少视觉混乱,保存框架数据,并在您观察线形图时暂停和重新暂停。