# Optimización de memoria de GPU

La funcionalidad Optimización de memoria de GPU (que se activa por defecto utilizando el valor predeterminado de ⅔ la memoria de GPU disponible) proporciona una mejora considerable con los controladores Windows Display Driver Model (WDDM) y Tesla Compute Cluster (TCC). Ahora bien, la memoria reservada debe seleccionarse cuidadosamente, dependiendo de la aplicación. La mayor ganancia en rendimiento es para aplicaciones que procesan imágenes pequeñas.

Pros | Contras
--- | ---
Reserva memoria en la tarjeta gráfica | Es difícil estimar la cantidad correcta de memoria que reservar
Se acabó perder tiempo en la asignación de memoria

Puede desactivar la funcionalidad o cambiar los ajustes de asignación a través de la API o mediante argumentos de la línea de comandos.

Por ejemplo, en la API de .NET, se pondría control.OptimizedGPUMemory(2.5*1024*1024*1024ul);; y en la API de C, se pondría vidi_optimized_gpu_memory(2.5*1024*1024*1024);

###### Memoria de la tarjeta gráfica

Uso de memoria de ViDi:

- Visualización: memoria para almacenar imágenes antes del cálculo
- Reservada para ViDi: memoria reservada para cálculos
- Libre: memoria que queda libre, porque no se conoce la cantidad de memoria utilizada

Ejemplo para entrenamiento:

- Memoria reservada de 2,5 GB (valor mínimo para el entrenamiento)
- Memoria libre de aproximadamente 1 GB
- Lo que da lugar a una tarjeta gráfica con al menos 3,5 GB de memoria

Ejemplo de tiempo de ejecución:

- Memoria reservada de 512 MB
- Memoria libre de unos 256 MB
- Lo que da lugar a una tarjeta gráfica que no requiere un mínimo de memoria