包含此页的版本:
不含此页的版本:
您可以通过使用命令行参数或使用 Unity 编辑器中的设置(编辑>项目设置>内存设置)来控制本机内存的分配方式。有关如何自定义本机内存分配器的信息,请参阅自定义本机内存分配器。
下表包含有关每个分配器设置的信息,以及它们的命令行参数及其默认值:
这些分配器是 Unity 用于大多数分配的分配器。
Unity 用于大多数分配的主要分配器。它具有以下设置:
| 设置 | 描述 | 命令行参数 | 默认值 |
|---|---|---|---|
| 主线程块大小 | 专用主线程分配器的块大小。 | memorysetup-main-allocator-block-size |
16777216字节 |
| 共享线程块大小 | 共享线程分配器的块大小。 | memorysetup-thread-allocator-block-size |
16777216字节 |
Unity 用于与 Gfx 系统相关的 CPU 分配的分配器。它具有以下设置:
| 设置 | 描述 | 命令行参数 | 默认值 |
|---|---|---|---|
| 主线程块大小 | 专用主线程 Gfx 分配器的块大小。 | memorysetup-gfx-main-allocator-block-size |
16777216字节 |
| 共享线程块大小 | 共享线程 Gfx 分配器的块大小。 | memorysetup-gfx-thread-allocator-block-size |
16777216字节 |
用于类型树和文件缓存的分配。它具有以下设置:
| 设置 | 描述 | 命令行参数 | 默认值 |
|---|---|---|---|
| 文件缓存块大小 | 文件缓存有自己的分配器以避免碎片。这是它的块大小。 | memorysetup-cache-allocator-block-size |
4194304字节 |
| 类型树块大小 | 类型树有自己的分配器,以避免由于许多小分配而导致碎片化。这是它的块大小。 | memorysetup-typetree-allocator-block-size |
2097152字节 |
在主分配器之间共享的存储桶分配器。它具有以下设置:
| 设置 | 描述 | 命令行参数 | 默认值 |
|---|---|---|---|
| 存储桶分配器粒度 | 共享分配器中存储桶的步长。 | memorysetup-bucket-allocator-granularity |
16字节 |
| 存储桶分配器 BucketCount | 存储桶大小的数量。 | memorysetup-bucket-allocator-bucket-count |
8 |
| 存储桶分配器块大小 | 用于存储桶的内存块的大小。 | memorysetup-bucket-allocator-block-size |
编辑 器:8388608字节播放器: 4194304字节 |
| 存储桶分配器块计数 | 要分配的最大块数。 | memorysetup-bucket-allocator-block-count |
编辑 器:8选手: 1
|
线程本地存储 (TLS) 分配器,用于处理非常短的分配。
| 分配器 | 描述 | 命令行参数 | 默认值(以字节为单位) |
|---|---|---|---|
| 主线程块大小 | 主线程堆栈的初始大小。 | memorysetup-temp-allocator-size-main |
编辑 器:16777216选手: 4194304
|
| 作业工作人员块大小 | Unity 作业系统中每个作业辅助角色的大小。 | memorysetup-temp-allocator-size-job-worker |
E262144 |
| 后台作业辅助角色块大小 | 每个后台辅助角色的大小。 | memorysetup-temp-allocator-size-background-worker |
32768 |
| 预加载块大小 | 预加载管理器堆栈大小。 | memorysetup-temp-allocator-size-preload-manager |
编辑 器:33554432选手: 262144
|
| 音频工作程序块大小 | 每个音频工作线程的堆栈大小。 | memorysetup-temp-allocator-size-audio-worker |
65536 |
| 云辅助角色块大小 | 云辅助线程堆栈大小。 | memorysetup-temp-allocator-size-cloud-worker |
32768 |
| Gfx线程块大小 | 主渲染线程堆栈大小。 | memorysetup-temp-allocator-size-gfx |
262144 |
| GI 烘焙块大小 | 每个 GI 工作线程的堆栈大小。 | memorysetup-temp-allocator-size-gi-baking-worker |
262144 |
| NavMesh:Unity 生成的网格,用于近似环境中的可行走区域和障碍物,以进行路径查找和 AI 控制的导航。更多信息 请参阅术语表工作程序块大小 |
导航meshUnity 的主要图形原语。网格体构成了 3D 世界的很大一部分。Unity 支持三角或四边形多边形网格。Nurbs、Nurms、Subdiv 曲面必须转换为多边形。更多信息 请参阅术语表工作线程堆栈大小。 |
memorysetup-temp-allocator-size-nav-mesh-worker |
65536 |
用于线程之间共享的短期分配的快速线性分配器。
| 分配器 | 描述 | 命令行参数 | 默认值(以字节为单位) |
|---|---|---|---|
| 作业分配器块大小 | Unity 主要使用循环线性线程分配器来处理作业工作线程。 | memorysetup-job-temp-allocator-block-size |
2097152 |
| 后台作业分配器块大小 | 后台辅助角色的线性分配器,允许更长的分配。 | memorysetup-job-temp-allocator-block-size-background |
21048576 |
| 低内存平台上的作业分配器块大小 | 内存小于 2 GB 的平台将此大小用于作业辅助角色和后台作业。 | memorysetup-job-temp-allocator-reduction-small-platforms |
262144 |
Unity 专门用于 Profiler 的分配器,以便它们不会干扰应用程序的分配模式。它们具有以下设置:
| 设置 | 描述 | 命令行参数 | 默认值 |
|---|---|---|---|
| 分析器帮助您优化游戏的窗口。它显示了在游戏的各个领域花费了多少时间。例如,它可以报告渲染、动画制作或游戏逻辑所花费的时间百分比。更多信息 请参阅术语表块大小 |
Profiler 主要部分的块大小。 | memorysetup-profiler-allocator-block-size |
16777216 |
| 编辑器分析器块大小(Editor Profiler Block Size) | 性能分析器(Profiler) 的 编辑器(Editor) 部分的块大小。这在播放器中不存在。 | memorysetup-profiler-editor-allocator-block-size |
1048576字节 |
Profiler 和 Editor Profiler 分配器的共享存储桶分配器。在低内存平台上不存在。它具有以下设置:
| 设置 | 描述 | 命令行参数 | 默认值 |
|---|---|---|---|
| 存储桶分配器粒度 | 共享分配器中存储桶的步长。 | memorysetup-profiler-bucket-allocator-granularity |
16字节 |
| 存储桶分配器 BucketCount | 存储桶大小的数量。例如,如果值为 4,则大小为 16 字节、32 字节、48 字节和 64 字节。 | memorysetup-profiler-bucket-allocator-bucket-count |
8 |
| 存储桶分配器块大小 | 用于存储桶的内存块的大小。 | memorysetup-profiler-bucket-allocator-block-size |
编辑 器:33554432字节播放器: 4194304字节 |
| 存储桶分配器块计数 | 要分配的最大块数。 | memorysetup-profiler-bucket-allocator-block-count |
编辑 器:8选手: 1
|