CUDA Tile IR de código abierto de NVIDIA, una representación intermedia para la programación de GPU, el 4 de diciembre. La compañía lanzó el código en GitHub bajo la licencia Apache 2.0, poniéndolo a disposición de desarrolladores e investigadores para su uso, modificación y distribución. Esta iniciativa sigue a la introducción por parte de NVIDIA del paradigma de programación de GPU CUDA Tile con CUDA 13.1 el 4 de diciembre, lo que marca la expansión de funciones más completa de la plataforma desde su lanzamiento en 2006. La medida se alinea con la reciente estrategia de apertura de NVIDIA para el ecosistema CUDA, revocando su licencia de propiedad para CUDA Tile IR. CUDA Tile IR se basa en el marco MLIR (representación intermedia de niveles múltiples) del proyecto LLVM. MLIR ha sido adoptado en IA y computación de alto rendimiento, incluida la pila de software de IA y computación de AMD, el proyecto IREE de Google que admite múltiples plataformas de hardware y el dialecto MLIR XeVM de Intel para su hardware. Otros marcos de IR como ONNX-MLIR, Torch-MLIR y MLIRE-AIE también utilizan el sistema MLIR. La base MLIR potencialmente permite que CUDA Tile IR se convierta a otros backends, ofreciendo una base técnica para admitir modelos informáticos relacionados en entornos de aceleradores o GPU que no sean NVIDIA. Se espera que CUDA Tile IR de código abierto avance en proyectos de compatibilidad y portabilidad, incluido ZLUDA. El proyecto CUDA Tile de código abierto incluye un dialecto Tile MLIR, enlaces API nativos de Python, representación de código de bytes y un conjunto de pruebas de conformidad. NVIDIA declaró que CUDA Tile IR es «una infraestructura de compilación y representación intermedia basada en MLIR para la optimización del kernel CUDA, con un enfoque en admitir patrones computacionales basados en mosaicos y optimizado para unidades NVIDIA Tensor Core». La compañía agregó que el proyecto «proporciona un ecosistema completo para expresar y optimizar la computación en mosaico para GPU NVIDIA, con el objetivo de simplificar el desarrollo de núcleos CUDA de alto rendimiento al proporcionar abstracciones para patrones en mosaico comunes, administración de jerarquía de memoria y optimizaciones específicas de GPU».





