할당자 커스터마이즈
Customize the allocator types with the Editor or command line.
읽는 시간 3분최근 업데이트: 한 달 전
참고: 일부 플랫폼에서는 이 기능을 지원하지 않습니다. 자세한 내용은 플랫폼별 기술 자료를 참조하십시오.
에디터 사용
- Project Settings > Memory Settings를 선택합니다.
- 편집할 값 옆에 있는 잠금 아이콘을 선택합니다.

플레이어 메모리 설정의 선택 사항을 보여 주는 Project Settings > Memory Settings
참고: 에디터 UI를 통해 커스터마이즈할 수 있는 필드를 보려면 이전 개별 할당자 섹션을 참조하십시오.
커맨드 라인 인자 사용
변경하려는 할당자 파라미터의 이름을 찾으려면 에디터와 플레이어가 시작할 때 출력하는 할당자 설정 리스트를 확인하십시오. 예를 들어 메인 힙 할당자의 블록 크기를 변경하려면 를 사용합니다.
-memorysetup-main-allocator-block-size=<new_value>할당자 파라미터 이름과 기본값:
할당자 | 설명 | 파라미터 이름 | 기본값 | ||
|---|---|---|---|---|---|
| Main Allocators | Unity에서 대부분의 할당에 사용하는 할당자입니다. | ||||
| Main Allocator | Unity에서 대부분의 할당에 사용하는 기본 할당자입니다. | ||||
| Main Thread Block Size | 전용 메인 스레드 할당자의 블록 크기입니다. | | | ||
| Shared Thread Block Size | 공유 스레드 할당자의 블록 크기입니다. | | | ||
| Gfx Allocator | Unity에서 Gfx 시스템과 관련된 CPU 할당에 사용하는 할당자입니다. | ||||
| Main Thread Block Size | 전용 메인 스레드 Gfx 할당자의 블록 크기입니다. | | | ||
| Shared Thread Block Size | 공유 스레드 Gfx 할당자의 블록 크기입니다. | | | ||
| Other Allocators | |||||
| File Cache Block Size | 파일 캐시에는 단편화를 방지하기 위한 자체 할당자가 있습니다. 이는 그 할당자의 블록 크기입니다. | | | ||
| Type Tree Block Size | 유형 트리에는 다수의 작은 할당으로 인한 단편화를 피하기 위해 자체 할당자가 있습니다. 이는 그 할당자의 블록 크기입니다. | | | ||
| Shared Bucket Allocator | 메인 할당자 간에 공유되는 버킷 할당자입니다. | ||||
| Bucket Allocator Granularity | 공유 할당자에 있는 버킷의 스텝 크기입니다. | | | ||
| Bucket Allocator BucketCount | 버킷 크기의 수입니다. | | | ||
| Bucket Allocator Block Size | 버킷에 사용되는 메모리 블록의 크기입니다. | | | ||
| Bucket Allocator Block Count | 할당할 최대 블록 수입니다. | | | ||
| Fast Per Thread Temporary Allocators | 매우 짧은 할당을 처리하는 TLS(스레드 로컬 스토리지) 할당자입니다. | ||||
| Main Thread Block Size | 메인 스레드 스택 크기의 초기값입니다. | | | ||
| Job Worker Block Size | Unity 잡 시스템에 있는 각 잡 워커의 크기입니다. | | | ||
| Background Job Worker Block Size | 각 백그라운드 워커의 크기입니다. | | | ||
| Preload Block Size | 사전 로드 관리자 스택 크기입니다. | | | ||
| Audio Worker Block Size | 각 오디오 워커 스레드의 스택 크기입니다. | | | ||
| Cloud Worker Block Size | 클라우드 워커 스레드 스택 크기입니다. | | | ||
| Gfx Thread Blocksize | 메인 렌더 스레드 스택 크기입니다. | | | ||
| GI Baking Blocksize | 각 GI 워커 스레드의 스택 크기입니다. | | | ||
| NavMesh Worker Block Size | 내비 메시 워커 스레드 스택 크기입니다. | | | ||
| Fast Thread Shared Temporary Allocators | 스레드 간에 공유되는 단기 할당을 위한 빠른 선형 할당자입니다. | ||||
| Job Allocator Block Size | Unity에서 주로 잡 워커 스레드에 사용하는 라운드 로빈 선형 스레드 할당자입니다. | | | ||
| Background Job Allocator Block Size | 수명이 긴 할당을 허용하는 백그라운드 워커용 리니어 할당자입니다. | | | ||
| 메모리가 적은 플랫폼의 Job Allocator Block Size | 메모리가 2GB 미만인 플랫폼은 잡 워커와 백그라운드 잡 모두에 사용하는 크기입니다. | | | ||
| Profiler Allocators | Unity에서 애플리케이션의 할당 패턴을 방해하지 않도록 프로파일러 전용으로 사용하는 할당자입니다. | ||||
| Profiler Block Size | 프로파일러의 주요 부분에 대한 블록 크기입니다. | | | ||
| Editor Profiler Block Size | 프로파일러의 에디터 부분에 대한 블록 크기입니다. 플레이어에는 없습니다. | | | ||
| Shared Profiler Bucket Allocator | 프로파일러와 에디터 프로파일러 할당자를 위한 공유 버킷 할당자입니다. 메모리가 적은 플랫폼에는 없습니다. | ||||
| Bucket Allocator Granularity | 공유 할당자에 있는 버킷의 스텝 크기입니다. | | | ||
| Bucket Allocator BucketCount | 버킷 크기의 수입니다. 예를 들어 값이 4인 경우 크기는 16, 32, 48, 64입니다. | | | ||
| Bucket Allocator Block Size | 버킷에 사용되는 메모리 블록의 크기입니다. | | | ||
| Bucket Allocator Block Count | 할당할 최대 블록 수입니다. | | |
팁: 변경 전후로 애플리케이션을 프로파일링하여 설정 성능을 개선할 수 있습니다. 자세한 내용은 프로파일러 개요 페이지와 프로파일러 분석기의 패키지 기술 자료를 참조하십시오. 프로파일러 분석기는 멀티프레임 비교를 지원하며, 특히 할당자 성능의 차이를 강조하는 데 유용합니다. 메모리 사용량 보고서도 확인할 수 있습니다. 보고서는 플레이어 또는 에디터를 닫으면 로그에서 확인할 수 있습니다. 로그 파일을 찾으려면 로그 파일 페이지의 지침을 따르십시오.
할당자 설정 저장 및 읽기
Unity는 할당자 설정을 에 저장하여 빌드 시 수정된 설정으로 파일을 채웁니다. 즉, 새 설정이 모든 빌드에 적용됩니다.
MemorySettings.assetboot.config에디터에서 는 폴더에 있습니다. Unity가 을 임포트하거나 변경할 때마다 업데이트됩니다. 에디터에 대한 새로운 값은 다음 에디터 시작 시에만 적용됩니다.
boot.configProjectSettingsMemorySettings.asset