# GPU 메모리 최적화

GPU 메모리 최적화 기능(사용 가능한 GPU 메모리의 ⅔인 기본값으로 활성화되어 있음)을 이용하면, Windows 디스플레이 드라이버 모델(WDDM)과 Tesla 컴퓨터 클러스터(TCC) 드라이버의 성능이 현저하게 개선됩니다. 하지만 응용 프로그램에 따라 예약 메모리를 신중하게 선택해야 합니다. 작은 이미지를 프로세싱하는 응용 프로그램의 경우 성능이 가장 크게 개선됩니다.

장점 | 단점
--- | ---
그래픽 카드의 메모리 예약 | 예약할 메모리의 정확한 양을 추정하기 어려움
메모리 할당에 낭비되는 시간 없어짐

이 기능은 API 또는 command line 인수를 이용해 비활성화하거나 할당 설정을 변경할 수 있습니다.

예를 들어, .NET API에서는 control.OptimizedGPUMemory(2.5*1024*1024*1024ul);로 설정하고, C API에서는 vidi_optimized_gpu_memory(2.5*1024*1024*1024);라고 설정할 수 있습니다.

###### 그래픽 카드 메모리

Deep Learning 메모리 사용:

- 표시: 계산 전에 이미지를 저장하는 메모리
- Deep Learning 예약: 계산을 위해 예약된 메모리
- 사용 가능: 메모리 양을 알 수 없어 사용 가능한 상태로 남겨진 메모리

트레이닝의 예:

- 예약 메모리 2.5GB(트레이닝의 최소값)
- 사용 가능 메모리 약 1GB
- 메모리가 3.5GB 이상인 그래픽 카드가 필요합니다

런타임의 예:

- 예약 메모리 512MB
- 사용 가능 메모리 256MB
- 필요 최소 메모리가 없는 그래픽 카드라도 됩니다