GPUs en Kubernetes · Lección 14
¿Qué habilita MPS (Multi-Process Service) de NVIDIA al compartir una GPU entre múltiples procesos?
Permite que múltiples procesos CUDA ejecuten sus kernels de forma concurrente real en la misma GPU (en vez de estrictamente turnado en el tiempo), mejorando la utilización cuando las cargas individuales son pequeñas
MPS reemplaza por completo la necesidad de tener drivers de NVIDIA instalados en el sistema
Solo funciona si se ejecuta exactamente un único proceso CUDA a la vez, igual que sin ningún mecanismo de compartición
Elimina por completo cualquier posibilidad de que los procesos compartidos interfieran entre sí de alguna forma
GPUs en Kubernetes · Lección 14
Completa el código
MPS permite ejecución concurrente real de kernels CUDA de distintos
Revisa: permite ejecución concurrente real de kernels CUDA de distintos procesos.
GPUs en Kubernetes · Lección 14
¿Por qué MPS podría mejorar el throughput total de la GPU en un escenario con muchas cargas pequeñas, comparado con ejecutarlas estrictamente una a la vez mediante time-slicing tradicional?
Pista: si cada carga individual es pequeña y no satura por sí sola toda la capacidad de la GPU, ejecutarlas de forma estrictamente turnada en el tiempo (una a la vez) desperdiciaría capacidad ociosa durante cada turno; MPS permite que esas cargas pequeñas se ejecuten realmente en paralelo, aprovechando mejor la capacidad total agregada de la GPU.
✓
¡Lección completada!
MPS (Multi-Process Service)
0
XP ganado
3
Vidas restantes