Direct3D 12의 메모리 관리

D3D12로 이동하려면 메모리 상주를 적절하게 동기화 및 관리해야 합니다. 메모리 상주를 관리한다는 것은 훨씬 더 많은 동기화를 수행해야 함을 의미합니다. 이 섹션에서는 메모리 관리 전략과 힙 및 버퍼 내의 하위 할당을 다룹니다.

섹션 내용

항목 Description
메모리 관리 전략
Direct3D 12용 메모리 관리자는 UMA 또는 개별(비UMA) 어댑터에 대한 다양한 지원 계층이 포함되고 GPU 어댑터 간의 상당한 아키텍처 차이로 인해 매우 복잡해질 수 있습니다.
이 섹션에 설명된 Direct3D 12 메모리 관리에 대한 권장 전략은 “분류, 예산 및 스트림”입니다.
버퍼 내 하위 할당
버퍼에는 애플리케이션이 CPU에서 GPU로 많은 임시 데이터를 전송하기 위해 D3D12에 필요한 모든 기능이 있습니다. 이 섹션에서는 리소스 및 버퍼의 사용 및 관리에 대한 네 가지 일반적인 시나리오를 다룹니다.
힙 내 하위 할당
리소스 힙은 CPU에서 GPU로(업로드) 또는 GPU에서 CPU로(다시 읽기) 데이터를 전송합니다.
상주
GPU가 개체에 액세스할 때 개체가 ‘상주’하는 것으로 간주합니다.

Direct3D 12 프로그래밍 가이드

리소스 바인딩