UE5 Profile 内存

UE5 提供了多种Profile内存(Memory)的手段。

memreport -full

在cmd命令行输入 memreport -full

内存报告文件会输出到Saved\Profiling\MemReports\XXX.memreport

用文本文件打开XXX.memreport

物理内存和虚拟内存相关信息

UE5 Profile 内存_第1张图片

Process Physical Memory Process Virtual Memory Physical Memory Virtual Memory
进程物理内存 进程虚拟内存 物理内存 虚拟内存

标记使用内存

UE Allocator对分配的内存打特殊标记, 比如TEXTUREGROUP_Lightmap,TEXTUREGROUP_UI等等。

UE5 Profile 内存_第2张图片

 UE5 Profile 内存_第3张图片

UObject对象数量和内存统计 

UE5 Profile 内存_第4张图片

 最后一行算了Objects的总内存

Class Count NumKB MaxKB ResExcKB ResExcDedSysKB ResExcShrSysKB ResExcUnkKB
UObject的类别 数量

使用

内存

最大使用内存

其他ResExc的总和

专用系统内存中分配的字节数 共享系统内存中分配的字节数 在位置内存中分配的字节数
ResExcDedVid ResExcShrVidKB
专用视频内存(VRAM)中分配的字节数 共享视频内存(VRAM)中分配的字节数

RHI内存

UE5 Profile 内存_第5张图片

RHI资源内存(比RHI内存更具体)

UE5 Profile 内存_第6张图片

 SkeletalMesh的资源 Object对象数量和内存统计 

 StaticMesh的资源 Object对象数量和内存统计

UE5 Profile 内存_第7张图片

 具体纹理对象内存占用(非VirtualTexture)

UE5 Profile 内存_第8张图片

粒子系统占用内存 

UE5 Profile 内存_第9张图片

.ini配置文件占用内存

UE5 Profile 内存_第10张图片

RT池占用内存 

UE5 Profile 内存_第11张图片

具体纹理对象内存占用

UE5 Profile 内存_第12张图片

 StaticMeshCompoent占据内存Object对象统计

UE5 Profile 内存_第13张图片

Unreal Insights--Memory Insights

文档在: 虚幻引擎中的Memory Insights | 虚幻引擎5.2文档 (unrealengine.com)

打开Unreal Insights

UnrealInsights.exe是一个独立Profile程序, 在 Engine\Binaries\Win64

UE5 Profile 内存_第14张图片

 如果该目录不存在UnrealInsights.exe执行程序, 得在工程中构建

UE5 Profile 内存_第15张图片

 打开显示: Live代表正在运行的进程

UE5 Profile 内存_第16张图片

加执行命令参数启动Editor或者项目

UE5 Profile 内存_第17张图片

UE5 Profile 内存_第18张图片

 Trace分析

点击上面UnrealInsight的OpenTrace,打开捕捉信息

UE5 Profile 内存_第19张图片

 LLM Tags

可以把想列表里想查看内存的对象类在左边的视图列出来

UE5 Profile 内存_第20张图片

 Investigation

内存调查系统, 可以使用规则(大于某个时间点,小于某个时间点,在某两个时间点之间)来显示一段时间内分配而一直未释放的内存, 下面是查看从10秒 ~ 20s的内存变化(10s开始分配并且到20s的时候还未释放的内存统计

UE5 Profile 内存_第21张图片

 UE5 Profile 内存_第22张图片

 这里点击Hierarchy每个alloc名字左边可以查看分配程序栈,内存大小,源文件等等:

UE5 Profile 内存_第23张图片

UE5 Profile 内存_第24张图片

 看了下感觉没中不足的是,缺乏信息,像Memort -full指令能指出一个object对象的具体名字和地图路径。

UE5 Profile 内存_第25张图片

你可能感兴趣的:(UE4/UE5引擎,Profile,ue5)