CPU 使用情况性能分析器模块具有一些通用操作,能让用户更便捷地在不同视图间切换浏览。
要聚焦于所选样本,请按 F 键。如果未进行任何选择,这将显示默认的缩放级别。
当切换到层级视图 (Hierarchy)、原始层级视图 (Raw Hierarchy) 或反向层级视图 (Inverted Hierarchy) 时,只要样本位于主线程上,您所做的选择就会保留。如果无法立即找到所选内容,请按 F 键进行聚焦。
要放大时间轴视图的轴上的区域:
按下键盘上的 A 键可重置缩放,以便可看到整个帧时间。
以下选项可用于管理线程的显示:
您可以为 GC.Alloc、UnsafeUtility.Malloc 和 JobHandle.Complete 发出的样本启用完整调用栈。要启用这些调用栈:
GC.Alloc 样本的调用栈。无论是在 Unity 编辑器中还是在运行的播放器中进行性能分析,都可以使用此功能。此功能仅对启用此设置后所分析的帧生效。
要进一步研究调用栈:
要打开完整的调用栈详细信息:
此相关数据 (Related Data) 视图列出了与此样本关联的元数据,其中可能包括与之相关联的 UnityEngine.Object。对于与 UnityEngine.Object 无关的任何元数据条目,此面板中会将其名称显示为 N/A。选择 N/A 条目时,性能分析器会详细信息视图的下半部分中显示元数据,包括调用栈。
Unity 报告的一些示例具有内置元数据,例如与进行渲染的 Camera 游戏对象相关联的 Camera.Render 示例。如果在播放模式下进行性能分析,Unity 将通过这些对象的实例 ID 来报告这些对象,并在性能分析器窗口中将其解析为名称。单击这些对象之一时,Unity 尝试通过场景层级视图来查找此对象,然后对此对象进行 ping 操作。
因为此关联性使用实例 ID,所以只有在播放模式下对应用程序进行性能分析并且该对象仍然存在的情况下,ping 操作才有效。对于 GC.Alloc 样本,此视图会显示 N/A 项的列表;在此层级视图级别发生的每个分配都有一个对应的项,并且会在 GC.Alloc 列中列出此分配的大小。
有关这些标记的更多信息,请参阅有关常见性能分析器标记的文档。