Pila de softwareRuta Operación
La pila de software CUDA
Leerlo en el Capítulo 2 · checkpoint +50 XP →
Driver del kernel → driver de usuario → runtime de CUDA → bibliotecas → frameworks. En cada unión puede haber incompatibilidades de versión.
De abajo hacia arriba:
- Módulo del kernel (
nvidia.koy compañía). Controla el hardware, la gestión de memoria (incluida Unified Memory / UVM), las interrupciones y el reporte de errores. NVIDIA publica una versión de código abierto, open-gpu-kernel-modules, la predeterminada para Turing y posteriores. Los mensajes Xid que lees endmesgvienen de aquí. - Driver de modo usuario (
libcuda.so): la driver API de CUDA, incluida con el driver. - Runtime y toolkit de CUDA (
libcudart,nvcc): contra lo que compilan las aplicaciones. - Bibliotecas: cuBLAS, cuDNN, NCCL, CUTLASS.
- Frameworks: PyTorch, JAX y herramientas de más alto nivel.
Regla de compatibilidad: un driver más nuevo ejecuta runtimes de CUDA más viejos, pero no al revés. nvidia-smi muestra la versión del driver y la versión máxima de CUDA que soporta. Los contenedores traen su propio runtime pero deben usar el driver del host, inyectado por el NVIDIA Container Toolkit. Ver contenedores y GPUs.
Relacionado
Fuentes y lecturas adicionales
- NVIDIA open-gpu-kernel-modules — open-source Linux GPU kernel driver
- CUDA C++ Programming Guide
- NVIDIA Container Toolkit
Escrito para LazyLab con nuestras propias palabras; las fuentes se citan para profundizar y verificar.