El soporte de CUDA deja de estar limitado a Linux en los equipos Arm con Windows. NVIDIA ha lanzado CUDA 13.4 con soporte para Windows on Arm y nuevas funciones de gestión de GPU compartidas. En concreto, nvidia cuda 13.4 también permite comenzar a portar aplicaciones hacia Rubin, aunque esta arquitectura aún se ofrece como vista previa. Asimismo, amplía las herramientas para Python, CCCL, Nsight y las bibliotecas matemáticas principales.

La actualización no se limita a añadir compatibilidad con una plataforma. Además, cambia la forma de administrar recursos gráficos compartidos. Por tanto, introduce nuevas vías para mover datos a través de NVLink y añade consultas sobre la ubicación de la memoria unificada. A continuación se detallan los cambios y la forma en que afectan al desarrollo de aplicaciones CUDA.

Windows on Arm y Rubin son los dos grandes puntos de partida

Las aplicaciones CUDA ya podían ejecutarse en plataformas Arm mediante Linux. CUDA 13.4 extiende ahora esa posibilidad a Windows on Arm, de modo que los desarrolladores pueden trabajar con aplicaciones aceleradas por GPU NVIDIA en ese entorno.

La versión también incorpora soporte funcional para la arquitectura NVIDIA Rubin, identificada con una capacidad de cómputo 107. Se trata de una función preliminar. Además, permite empezar a adaptar el código antes de que el soporte para Rubin alcance la disponibilidad general en una futura versión del CUDA Toolkit.

NVIDIA describe Rubin como la arquitectura de próxima generación destinada a impulsar la etapa de la inteligencia artificial agéntica. Para compilar hacia estas GPU se añade el objetivo arquitectónico SM_107. Además, la compatibilidad de los compiladores anfitriones incluye GCC 16 y Clang 22 en las plataformas compatibles.

  • Windows on Arm recibe soporte de CUDA por primera vez en esta línea de desarrollo.
  • Rubin llega como vista previa funcional, no como soporte general definitivo.
  • El objetivo SM_107 permite compilar código para las GPU Rubin.
  • GCC 16 y Clang 22 pasan a figurar entre los compiladores compatibles en los sistemas admitidos.

MPS V3 permite repartir una GPU compartida con más precisión

Multi-Process Service V3 actualiza la capa de control de CUDA MPS para simplificar la automatización y la administración de recursos gráficos compartidos. El sistema incorpora una interfaz de línea de comandos preparada para scripts, instancias de servidor con nombre y espacios de nombres para organizar cargas concurrentes.

También se añade configuración mediante TOML. Además, se incorpora control sobre las particiones de los multiprocesadores de streaming —SM— y límites de memoria de GPU integrados con cgroups. Con estos elementos, el reparto de una GPU puede definirse de forma programática. Además, atiende a tres aspectos distintos: rendimiento de cálculo, límites de memoria y prioridad de ejecución.

MPS V3 está preparado para entornos contenerizados. La intención es aumentar el uso efectivo del hardware sin perder el aislamiento de recursos que necesita cada proceso. En concreto, la documentación de CUDA incluye una guía rápida y la referencia completa para empezar a utilizar esta versión del servicio.

CFT mueve datos por NVLink sin mapear cada GPU remota

CUDA Compute Fabric Transport —CFT— propone un modelo centrado en el transporte para que las aplicaciones avanzadas y las bibliotecas de comunicación intercambien datos a través de una red NVLink a gran escala.

En lugar de asignar cada reserva de memoria remota de una GPU dentro del espacio de direcciones virtuales del proceso, el software puede dirigirse a puntos finales lógicos identificados por un ID y un desplazamiento. Desde la GPU se pueden lanzar operaciones asíncronas de escritura, lectura y reducción.

Este planteamiento reduce la presión sobre las direcciones virtuales en sistemas con muchas GPU. Además, admite patrones de comunicación unicast y multicast. Asimismo, informa sobre la finalización y los errores.

Así, una aplicación puede detectar una transferencia fallida. Por tanto, decide si la reintenta o la redirige. CFT solo está disponible mediante la API de controladores de CUDA. Está orientado a quienes desarrollan bibliotecas de comunicación. Por ello, necesitan funciones muy concretas que no ofrecen las capas superiores.

Para la mayoría de las aplicaciones, NVIDIA señala bibliotecas como NCCL o NVSHMEM como la vía adecuada. CUDA 13.4 incorpora asimismo acceso programático a los dominios de localidad. Cada dominio es una parte de la GPU que agrupa multiprocesadores de streaming y memoria del dispositivo.

Una aplicación puede reservar memoria dentro de un dominio. Además, puede crear en ese mismo lugar un contexto verde con recursos de SM. Mantener el cálculo cerca de la memoria utilizada puede mejorar el rendimiento en dispositivos que cuentan con más de un dominio de localidad.

Las consultas de memoria ayudan a evitar movimientos innecesarios

La API incorpora consultas sobre la residencia de la memoria unificada. Las bibliotecas y los entornos de ejecución sensibles al rendimiento pueden averiguar directamente dónde se encuentran los datos gestionados o asignados por el sistema en cada momento.

La memoria unificada facilita la programación heterogénea. Sin embargo, el software de alto rendimiento sigue necesitando conocer la localidad de los datos. Esa información permite evitar migraciones de páginas innecesarias, accesos a memoria remota o rutas de almacenamiento intermedio poco eficientes.

nvidia cuda 13.4 — Results of CUB DeviceScan for Blackwell showing increased bandwidth compared to the older algorithm.

Con las consultas de residencia, las aplicaciones pueden decidir con más información cuándo ejecutar un cálculo y cuándo trasladar los datos. La función de referencia para estas consultas es cudaMemGetLocationInfo.

La instalación también cambia su organización. Los instaladores del SDK de CUDA dejan de incluir el controlador de NVIDIA. Por tanto, el controlador nvidia-open o los paquetes cuda-toolkit deben instalarse por separado mediante el gestor de paquetes elegido.

En plataformas NVIDIA coherentes, como NVIDIA Grace Hopper, NVIDIA Grace Blackwell y NVIDIA Vera Rubin, el controlador pasa a utilizar por defecto Coherent Driver-based Memory Management —CDMM— en lugar de NUMA. El modo NUMA sigue disponible y puede seleccionarse con un parámetro del módulo del kernel.

Quien necesite mantener NUMA debe cambiar la configuración antes de actualizar. Además, se trata de un ajuste para todo el nodo que exige recargar el controlador o reiniciar el sistema. Por ello, el modo debe quedar elegido antes de completar la actualización. NVIDIA remite a su documentación de CDMM para consultar el funcionamiento de este modelo de gestión de memoria en plataformas con coherencia de hardware.

CUDA Python amplía memoria, texturas y grafos

CUDA Python continúa ampliando el acceso con sintaxis propia de Python a las API principales de CUDA y a algoritmos GPU de alto rendimiento. CUDA Python 1.0 fue el punto de partida. Ahora cuda.core 1.1.0 extiende la API estable con programación de texturas y superficies, más control sobre la memoria gestionada, una integración más completa con los grafos de CUDA e información de tipos para herramientas de desarrollo y agentes.

Texturas y superficies desde Python

El nuevo módulo cuda.core.texture ofrece API de Python para trabajar directamente con memoria de texturas y superficies. OpaqueArray y MipmappedArray representan asignaciones de GPU organizadas por el hardware. TextureObject permite lecturas de kernels sin enlace previo y con filtrado realizado por el hardware.

Además, SurfaceObject proporciona cargas y escrituras tipadas desde el kernel. El flujo de trabajo consiste en crear un array CUDA opaco, copiar la imagen, describir ese recurso y asociarlo a un objeto de textura. Después, el identificador del objeto puede entregarse a un kernel escrito en CUDA C++. Por ejemplo, el ejemplo de la documentación utiliza una matriz de 1024 × 1024 elementos con formato FLOAT32, un canal y filtrado lineal.

Memoria gestionada con conocimiento de NUMA

ManagedMemoryResource.allocate() devuelve ahora un ManagedBuffer con una interfaz basada en propiedades para configurar recomendaciones de memoria CUDA. El programa puede marcar datos como principalmente de lectura. Además, puede fijar una ubicación preferente y declarar qué procesador tendrá acceso a ellos.

El nuevo tipo Host complementa a Device al describir ubicaciones de memoria. Puede representar cualquier memoria del sistema, un nodo NUMA concreto o el nodo NUMA asociado al hilo que realiza la llamada. El flujo mostrado por NVIDIA reserva buffers para pesos y resultados. Luego, marca los pesos como principalmente de lectura y fija la GPU como ubicación preferente y registra su acceso.

Después, prefetch_batch lleva los datos a la GPU. Finalmente, una vez terminado el cálculo, el resultado se precarga de nuevo en la memoria del sistema mediante Host().

Más información para los entornos de desarrollo

CUDA Python 1.1 incluye archivos de tipos .pyi para toda la API pública. Los entornos de desarrollo y los agentes de programación pueden consultar autocompletado, firmas y tipos de retorno. Además, se puede acceder a otra información sin tener que deducirla.

Entre las mejoras de los grafos, GraphBuilder.graph_definition expone como GraphDefinition un grafo capturado. Esto permite combinar la captura de un stream con una construcción explícita. Además, posibilita inspeccionar o ampliar el grafo obtenido.

La actualización suma enumeración específica de dispositivos NVLink. También añade opciones para configurar colas de trabajo de contextos verdes. Por ejemplo, incluye entradas de tipo ruta para Program y ObjectCode y una propiedad pública Buffer.size. Además, mejora la validación IPC, la compatibilidad con Python sin bloqueo global de hilos y la restauración de puntos de control de procesos CUDA.

CCCL 3.4 acelera algoritmos y simplifica su compilación

CUDA 13.4 incorpora CCCL 3.4, la colección de bibliotecas que reúne algoritmos GPU personalizables y de alto rendimiento. Además, la versión añade compilación anticipada de objetos de algoritmo para varias arquitecturas, incluso en máquinas de compilación que no tienen una GPU instalada.

ProxyArray y ProxyValue describen los tipos de los argumentos sin reservar memoria del dispositivo. La función serialize() crea un archivo que se puede almacenar y desplegar. En el equipo de destino, deserialize() recupera el algoritmo sin recompilarlo. Además, carga la versión preparada para la arquitectura de GPU presente.

El ejemplo incluido compila una reducción para sm_80 y sm_90 sin utilizar una GPU durante la construcción. Por tanto, el resultado se guarda en el archivo reduce.cclb para su despliegue posterior.

Mejoras específicas de CUB

En las GPU NVIDIA Blackwell aparece una implementación especializada por warps de cub::DeviceScan. Utiliza Tensor Memory Accelerator —TMA— para solapar el movimiento de datos y el cálculo. Además, reduce la sincronización.

En las pruebas sobre una GPU NVIDIA Blackwell, la nueva implementación de cub::DeviceScan::Sum alcanza hasta un 92 % de utilización del ancho de banda de memoria. Frente a aproximadamente un 50 % de la implementación anterior, esto ocurre en los tipos de datos probados. La implementación está ajustada para cargas de escaneo grandes. Además, conserva rutas alternativas para arquitecturas, tipos de datos, iteradores y cadenas de herramientas no compatibles.

CCCL 3.4 completa además la llegada de sobrecargas de una sola llamada basadas en entornos a los algoritmos de dispositivo de CUB. Antes, lo habitual era ejecutar el algoritmo una vez para conocer la memoria temporal necesaria. Luego, reservarla y repetir la llamada para realizar la operación.

Por tanto, las nuevas sobrecargas obtienen ese almacenamiento desde un recurso de memoria proporcionado por el entorno de ejecución. El entorno del ejemplo combina un stream CUDA con una reserva de memoria y ejecuta una reducción sin gestionar manualmente el almacenamiento temporal. Las API tradicionales de dos fases no están obsoletas. Sin embargo, siguen disponibles para las aplicaciones que necesitan controlar explícitamente esa memoria.

También se añade cub::WarpReduceBatched, una operación colectiva para reducir varios lotes independientes de valores distribuidos dentro de un warp. Procesa los lotes conjuntamente. Además, minimiza las operaciones de mezcla. Por ello, aumenta la cantidad de trabajo útil que realiza cada warp.

Algoritmos paralelos de C++ en la GPU

CUDA 13.4 incorpora en cuda::std el modelo de algoritmos paralelos de la biblioteca estándar de C++. Con la política de ejecución cuda::execution::gpu, los desarrolladores pueden utilizar algoritmos como copy_if, find_if, merge, reduce, transform y scan.

Estas operaciones trabajan sobre rangos accesibles desde el dispositivo. Además, se apoyan internamente en implementaciones de CCCL y CUB. El resultado es una interfaz reconocible para quienes programan en CUDA C++. Sin perder el acceso a streams y recursos de memoria, se mantienen políticas de ejecución configurables.

El NVIDIA CUDA 13.4: CUDA Tile IR y herramientas Nsight para más cargas

En CUDA Tile IR, el soporte de Programmatic Dependent Launch permite solapar kernels dentro del mismo stream de CUDA. Un kernel dependiente puede comenzar antes de que termine su predecesor. Además, en CUDA Tile C++ aparecen dos vistas nuevas para cargar y almacenar datos.

Strided view crea bloques de tamaño estático. La separación se define con un factor conocido durante la compilación. Por ejemplo, sirve para patrones de acceso parecidos a operaciones de tipo stencil. En cambio, Gather scatter view permite trabajar con bloques no contiguos de un array. Además, se orienta a accesos dispersos.

Nsight Python 1.0 añade una interfaz de perfilado de kernels en Python. Un decorador y un gestor de contexto automatizan la comparación entre configuraciones de kernel. Además, automatizan la recopilación de métricas arquitectónicas. También previenen estrangulamientos de la GPU y visualizan el rendimiento desde un único script.

El objetivo no es medir únicamente el tiempo de pared. Nsight Python recopila métricas arquitectónicas con poco código adicional. Por tanto, evita que el desarrollador tenga que construir manualmente informes. Además, evita analizar resultados línea por línea.

Nsight Compute 2026.3 incorpora compatibilidad con Tile IR para cargas CUDA Tile. Los desarrolladores pueden inspeccionar Tile IR en la página de código fuente. Después, relacionarlo con el código CUDA Tile y el código generado. También mejora la información sobre derrames de registros en cargas OptiX. Por último, amplía Nsight Copilot.

Nsight Systems y métricas CPU para aislar cuellos de botella

Nsight Systems 2026.5.1 amplía la cobertura de plataformas y la visibilidad de cargas de CUDA, CPU, marcos de inteligencia artificial, redes y almacenamiento. Su versión web añade soporte para CUDA 13.4, GPU Rubin y Windows on Arm. Además, proyecta los rangos NVTX dentro de una jerarquía «All Streams».

Luego, desmangla los nombres de cuTile. Después, muestra en la línea temporal las cargas CUDA enviadas mediante streams CiG. En esta misma actualización, NVIDIA CUDA 13.4 suma soporte a Nsight Systems para seguir la evolución de las cargas en distintos entornos.

Los conjuntos de métricas de CPU agrupan contadores relacionados. Así, se recopilan en una sola pasada. Esto permite aislar progresivamente los cuellos de botella mediante conjuntos Topdown. En PyTorch, la opción –pytorch=functions-trace-shapes incorpora formas de tensores y parámetros de entrenamiento a las funciones trazadas.

En cambio, el desarrollador puede elegir entre ese nivel de detalle y la menor sobrecarga de la opción de trazado de funciones existente.

Side-by-side panels of annotated source code, specifically two different performance regions and the associated performance of both regions.

Perfilado de red

El perfilado de red añade recopilación de métricas NIC de alta frecuencia a través de NVIDIA DOCA Telemetry Service. Así es posible relacionar el tráfico, las notificaciones de congestión y las esperas de envío con la actividad de la aplicación. Además, esto se logra sin privilegios elevados.

Una nueva receta de análisis de retrasos de NCCL estudia los tiempos de las operaciones colectivas. De este modo, localiza los rangos que retrasan de forma repetida el avance del comunicador. La documentación de Nsight Systems detalla los requisitos de recopilación y el uso de estas recetas.

Perfilado de almacenamiento y clúster

En almacenamiento aparece una receta de resumen de accesos S3. Esta receta agrupa patrones de acceso y estadísticas de entrada y salida entre procesos y hosts. Por tanto, puede ayudar a localizar buckets y objetos muy utilizados.

También identifica transferencias pequeñas frecuentes y desequilibrios de carga. El perfilado de métricas NVIDIA SCADA lleva a la línea temporal contadores e histogramas de la arquitectura SCaled Accelerated Data Access. Con ellos se puede relacionar la actividad del servidor de almacenamiento con los eventos de CPU y GPU.

Para perfiles y análisis de varios nodos, el complemento experimental vClock mejora la alineación de los informes. Además, no cambia los relojes del sistema. Por ello, tampoco exige acceso privilegiado cuando no está disponible una sincronización de alta precisión como PTP.

Los payloads binarios de NVTX pueden exportarse como tablas relacionales dinámicas. Sus campos pasan a representarse como columnas para el análisis posterior en SQLite, Arrow y Arrow/Parquet. En concreto, el marco de complementos de Nsight Systems incorpora una fase de inicialización. Además, ofrece una API de devolución al salir el proceso. También carga bibliotecas de complementos en subprocesos.

Con estos cambios, los desarrolladores pueden iniciar la recopilación antes de que arranque la aplicación. Además, pueden capturar datos generados durante el cierre. También pueden ampliar el perfilado a procesos hijos. Nsight Cloud facilita la consulta y el análisis de informes en sistemas remotos sin interfaz gráfica. En cambio, Nsight Operator suma mejoras para análisis, OpenTelemetry y NVIDIA Dynamo. Por último, incluye un sitio de documentación nuevo.

Nsight AI y Compute Sanitizer añaden asistencia y comprobaciones

Nsight AI incorpora asistencia especializada para los flujos de desarrollo de computación acelerada. El servidor CUDA MCP alojado por NVIDIA conecta agentes de programación compatibles con la documentación actual de CUDA y sus ejemplos de código.

Para los equipos que prefieren operar la infraestructura por su cuenta, Nsight Copilot Blueprint ofrece un backend de inteligencia artificial de CUDA con código abierto y despliegue autónomo.

NVIDIA Compute Sanitizer mejora la detección de accesos fuera de los límites de la memoria compartida. Además, lo hace mediante parches realizados durante la compilación en Hopper y arquitecturas posteriores. Initcheck incorpora soporte para memcpy asíncrono por lotes. Además, racecheck añade filtrado por bloque de clúster.

Las bibliotecas matemáticas preparan Rubin y Windows on Arm

Las bibliotecas matemáticas principales de CUDA Toolkit 13.4 reciben soporte funcional para Rubin. Además, aportan compatibilidad con Windows on Arm dentro del ecosistema de portátiles N1X.

En cuBLAS, la precisión doble mejora mediante emulación de punto fijo basada en el esquema Ozaki-II. En las GPU de centro de datos NVIDIA Blackwell, cuBLASLt distribuye dinámicamente los cálculos Grouped GEMM entre los multiprocesadores de streaming. Así, reduce los desequilibrios de carga en cargas MoE habituales.

Frente a versiones anteriores del toolkit, este método mejora las llamadas Grouped GEMM con muchos grupos. Por ejemplo, 32 grupos. Además, puede aumentar el rendimiento cuando las operaciones Grouped GEMM se ejecutan al mismo tiempo que otros kernels del dispositivo.

cuBLASLt incorpora de forma experimental los modos de escalado CUBLASLT_MATMUL_MATRIX_SCALE_VEC32_MN_K4_UE8M0 y CUBLASLT_MATMUL_MATRIX_SCALE_VEC128_MN_K4_UE8M0. Ambos utilizan una organización alternativa de los factores de escala para tensores A y B con precisión FP8.

Los factores se agrupan de cuatro en cuatro. Además, se almacenan con disposición mayoritaria M o N. Cuando la dimensión principal no es divisible entre cuatro, se añade relleno. La documentación de cuBLASLt recoge los detalles de estos modos experimentales.

CUDA Toolkit 13.4 reúne, por tanto, soporte de Windows on Arm, una vista previa de Rubin, nuevas herramientas para administrar y comunicar recursos de GPU. Además, incluye mejoras en CUDA Python y CCCL, funciones adicionales de Nsight y cambios en las bibliotecas matemáticas. NVIDIA ofrece la descarga del toolkit y las notas de versión con la lista completa de funciones, plataformas compatibles y datos de compatibilidad.

Puedes seguir a HardwarePremium en Facebook, Twitter (X), Instagram, Threads, BlueSky o Youtube. También puedes consultar nuestro canal de Telegram para estar al día con las últimas noticias de tecnología.

FAQ

¿CUDA 13.4 funciona en Windows on Arm?

Sí. Esta versión extiende a Windows on Arm el soporte que CUDA ya ofrecía en plataformas Arm mediante Linux. Nsight Systems 2026.5.1 también incorpora compatibilidad con Windows on Arm.

¿Rubin está disponible con soporte CUDA definitivo?

No. CUDA 13.4 ofrece soporte funcional de Rubin como vista previa para que los desarrolladores comiencen a portar sus aplicaciones. La disponibilidad general llegará en una futura versión del CUDA Toolkit.

¿Qué ocurre con el controlador NVIDIA al instalar CUDA 13.4?

Los instaladores del SDK ya no incluyen el controlador. El paquete nvidia-open o los paquetes cuda-toolkit deben instalarse por separado usando el gestor de paquetes elegido.

¿Qué deben revisar los usuarios de NUMA antes de actualizar?

En plataformas coherentes, CDMM pasa a ser el modo predeterminado. Si se necesita NUMA, hay que seleccionarlo antes de actualizar, porque el cambio requiere recargar el controlador o reiniciar y afecta a todo el nodo.

🔥 ¿Tienes un minuto? Dale al play, te van a engancharSuscríbete al canal
🔴 NUEVOASUS VG27UQEL5A: el dual mode asequible que promete muchoASUS VG27UQEL5A: el dual mode asequible que promete mucho
Windows PUNTÚA tu PC y casi nadie lo sabe 😱Windows PUNTÚA tu PC y casi nadie lo sabe 😱
Los NUEVOS volantes de MOZA con Mercedes, Porsche y FordLos NUEVOS volantes de MOZA con Mercedes, Porsche y Ford
ASUS ROG Spatha X 65K: ¡12 BOTONES y 65.000 DPI! 🔥 #ShortsASUS ROG Spatha X 65K: ¡12 BOTONES y 65.000 DPI! 🔥 #Shorts
ASUS ROG celebra 20 AÑOS con esta ROG ALLY X20 🔥 | Gamescom 2026 #ShortsASUS ROG celebra 20 AÑOS con esta ROG ALLY X20 🔥 | Gamescom 2026 #Shorts

Comentarios

Cargando comentarios…
QIDI Plus5