UE5 性能分析 UnrealInsights
Unreal Insights会话浏览器 (Unreal Insights Session Browser)是一个观察跟踪数据的界面。
一、开启UnrealInsights
以通过UE编辑器启动,请前往底部工具栏,然后点击Trace>Insights>Unreal Insights(Session Browser)。
二、Trace Store
Trace Store 是一个供你观察和管理所有已存储的跟踪会话(Trace Sessions)的界面。所跟踪记录以文件形式存储在一个文件夹中,Unreal Insights监测这个文件夹的任何数据变化,然后将可用的跟踪列表显示在Unreal Insights用户界面中。
数字索引 | 类别 | 描述 |
---|---|---|
(1) | Trace Store面板 | 打开并管理你的跟踪文件以进行分析。 |
(2) | Trace Story路径 | 显示并打开Trace Sessions的目录路径。 |
(3) | Trace Sessions | 列出你可以加载分析的预记录会话。它们与Trace Store Directory中的 .utrace 文件对应。 你可以右键单击一个Trace Session来重命名或删除。你也可以使用快捷键:选择Trace Session并按 F2 重命名,或按 Del 删除。 |
(4) | Session过滤器 | 将你的跟踪文件按 平台 、 应用程序名称 、 配置 、 目标 和 分支 分类。 |
(5) | 搜索栏 | 通过指令行或名称过滤你的搜索。 |
(6) | 连接选项卡 | 设置与远程跟踪服务器的连接。 |
三、Connection连接选项卡
连接选项卡允许你通过跟踪服务器连接到一个正在运行的游戏或编辑器。它具有多个选项来改变你的连接设置。
数字索引 | 类别 | 描述 |
---|---|---|
(6) | 连接选项卡 | 管理远程运行的游戏或编辑器与跟踪服务器之间的连接。 |
(7) | Trace Recorder IP地址 | 跟踪服务器的IP地址。 |
(8) | 运行实例IP地址 | 与追踪服务器连接的项目(运行实例)的IP地址,以开始追踪数据。 |
(9) | 初始通道 | 用于指定跟踪连接开始分析数据时要启用的跟踪通道列表的字段。 |
五、实时连接
如果一个实时Trace会话连接到该工具,它也会出现在列表中。实时会话在状态栏中显示 LIVE 字样,并在你分析它们时实时更新。否则,它们与预先录制的会话是一样的。
该工具可以同时连接到多个会话,并在数据流进来时自动记录所有这些会话的数据。要实时分析这些会话,从列表中加载它们,与加载预先录制的会话的方式相同。
六、Timing Insights窗口
Timing Insights 窗口收集性能数据。它显示的是 CPU 和 GPU 轨道的数据。这些轨道具有多个子菜单,帮助你分类和可视化各种处理任务以及你的项目在执行这些任务时花费的时间。
详见
https://dev.epicgames.com/documentation/zh-cn/unreal-engine/timing-insights-in-unreal-engine-5
导出功能
定时器(Timers)面板具有通过选择一个或多个定时器并右键点击上下文菜单来导出时序事件数据的功能。
- 导出(Export) (CTRL+S)
将选定的定时器及其分组统计数据导出到文本文件。
- 你可以找到时序(Timing)视图,点击并拖动时间栏,从主时间轴视图中标记你有兴趣导出的时间。
- 观察分组统计信息在定时器(Timers)面板中更新,体现时间选择。
- 从定时器(Timers)面板中,手动选择你有兴趣保存的定时器,或使用Ctrl+A选择所有定时器。
- 然后,按CTRL+S,或从上下文菜单中选择"导出(Export)"并选择
*.tsv
、*.txt
或*.csv
文件,以保存所选定时器及其聚合统计数据(针对所选时间范围)。
- 导出时序事件(Export Timing Events)
将时序事件导出到文本文件。
-
找到时序(Timing)视图,点击并拖动时间栏,从主时间轴视图中标记你有兴趣导出的时间。
如果没有选择时间,将导出整个时间轴。
- 在时序(Timing)面板中,点击CPU/GPU线程轨道,以显示或隐藏你想导出的轨道。
- 选择你感兴趣的定时器,或使用Ctrl+A选择所有定时器。
- 从上下文菜单选择 导出时序事件(选择)...(Export Timing Events (Selection)...),并选择用制表符分隔的值(
*.tsv/*.txt
)或用逗号分隔的值(*.csv
)文件。 - 你可以导出"线程"和"定时器",以便将线程ID和定时器ID与线程和定时器的名称相匹配。
- 多导出选项(More Export Options) / 导出线程(Export Threads)
将定时器列表导出到文本文件。( .tsv
或.csv
)。
- 更多导出选项(More Export Options) / 导出时序事件(全部)(Export Timing Events (All))
将全部CPU/GPU线程的全部时序事件导出到文本文件( .tsv
或.csv
)。
导出文件可能很大,即使是小会话也可能有数百万个时序事件。
七、Memory Insights
Memory Insights 组件允许你调查你项目中的内存使用情况和调用堆栈追踪。
Memory Insights对运行期间发生的每个分配、重新分配或空闲事件进行追踪,然后在分析期间重建该内存使用模式。
详见
https://dev.epicgames.com/documentation/zh-cn/unreal-engine/timing-insights-in-unreal-engine-5