D3D12엔진에서 GPU Dedicated 메모리를 쳐묵쳐묵하고 있는 건에 대해서.

dx12_2016_0405_capture

똑같은 상황에서 메모리 사용 현황

  • 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. 1. 시스템 메모리 사용량은 D3D11, D3D12엔진 모두 비슷.
  2. GPU Dedicated메모리 사용량은 DX12가 2배.
  3. 확실히 내 손으로 할당한건 193MB. 넉넉잡고 300MB정도까지는 납득할 수 있음.
  4. DX11에서의 GPU Dedicated 메모리 사용량은 말이 되는데 DX12에서의 GPU Dedicated 메모리 사용량은 내 예상치보다 훨씬 높음.

추측

모든 D3D12 Resource가 64KB align 되기 때문에 메모리 오버헤드가 크다.

d3d12_buffer_info

일단 드라이버 단에서 뭔가 햬결해줄지 어떨지 좀더 지켜보고.
그렇지 않으면 64KB Align을 고려해서 좀더 packing을 할 수 있도록 노력해봐야.

답글 남기기

댓글을 게시하려면 다음의 방법 중 하나를 사용하여 로그인 하세요:

WordPress.com 로고

WordPress.com의 계정을 사용하여 댓글을 남깁니다. 로그아웃 /  변경 )

Facebook 사진

Facebook의 계정을 사용하여 댓글을 남깁니다. 로그아웃 /  변경 )

%s에 연결하는 중