똑같은 상황에서 메모리 사용 현황
- DX11 – System: 579,608 KB , GPU Dedicated: 279,536 KB
- DX12 – System: 598,608 KB , GPU Dedicated: 553,136 KB
그리고 VS2015 Graphics Debugger에서 프레임을 캡쳐해서 현재 D3D 오브젝트들이 사용하는 메모리 사이즈를 다 합산해봄.
- 202665770 Bytes -> 193MB
- 1. 시스템 메모리 사용량은 D3D11, D3D12엔진 모두 비슷.
- GPU Dedicated메모리 사용량은 DX12가 2배.
- 확실히 내 손으로 할당한건 193MB. 넉넉잡고 300MB정도까지는 납득할 수 있음.
- DX11에서의 GPU Dedicated 메모리 사용량은 말이 되는데 DX12에서의 GPU Dedicated 메모리 사용량은 내 예상치보다 훨씬 높음.
추측
모든 D3D12 Resource가 64KB align 되기 때문에 메모리 오버헤드가 크다.
일단 드라이버 단에서 뭔가 햬결해줄지 어떨지 좀더 지켜보고.
그렇지 않으면 64KB Align을 고려해서 좀더 packing을 할 수 있도록 노력해봐야.