Hardware

← Todas las noticias

Nvidia mete la prohibición de translation layers de CUDA en la EULA instalada

La documentación de CUDA de Nvidia ahora se instala con una cláusula que prohíbe usar layers de traducción para correr software CUDA en hardware que no sea de Nvidia. Según Tom's Hardware, la cláusula estaba en el EULA online de Nvidia desde 2021, pero aparece por primera vez en la documentación que se instala con el toolkit, a partir de CUDA 11.6. La restricción no es nueva; lo que cambió es que ahora la aceptás en el momento de la instalación, sin tener que leer la letra chica online.

El contexto es directo: como la combinación de CUDA con el hardware de Nvidia se comprobó eficiente, una buena parte del software de GPU depende de ella, y a medida que entra hardware más competitivo al mercado, más gente quiere correr esos programas en otras chips. Hay dos formas de hacerlo: recompilar el código, que requiere acceso al código fuente, o correr los binarios ya compilados a través de un translation layer. La cláusula apunta a la segunda opción.

Qué dice la cláusula

El texto del EULA instalado dice: "You may not reverse engineer, decompile or disassemble any portion of the output generated using SDK elements for the purpose of translating such output artifacts to target a non-NVIDIA platform." En la práctica, eso significa que podés seguir compilando programas CUDA, pero tomar el output compilado y correrlo en una chip de otro vendor a través de una capa de compatibilidad queda fuera. La cláusula no estaba en la documentación del EULA que se instalaba con CUDA 11.5 y versiones anteriores, y sí está desde 11.6 en adelante.

A quién parece apuntar

Según Tom's Hardware, el momento coincide con dos líneas de trabajo. La primera es ZLUDA, una capa de traducción para correr binarios CUDA en GPUs que no son de Nvidia, en la que tanto AMD como Intel habían participado antes de alejarse del desarrollo, dejando al proyecto a la deriva. La segunda es un grupo de fabricantes chinos de GPUs que aseguran compatibilidad con CUDA: Denglin Technology anuncia procesadores con una "computing architecture compatible with programming models like CUDA/OpenCL", y Moore Threads trae MUSIFY, una herramienta diseñada para que el código CUDA funcione en sus GPUs. No está claro si MUSIFY es un translation layer completo o en parte una herramienta de porting, y Nvidia no comentó a qué apunta la cláusula.

Qué sigue funcionando

Recompilar programas CUDA para otra plataforma sigue siendo perfectamente legal, y es el camino que sí está soportado. Tanto AMD, con ROCm, como Intel tienen herramientas de porting para mover código CUDA a sus stacks. Y el código nativo suele correr mejor que los binarios pasados por un translation layer, que es justo por eso que existe el atajo: te deja correr binarios ya compilados sin que el vendor del software tenga que escribir nada nuevo para tu chip. La cuenta pendiente es que depende de un tercero que mantenga la capa, y ahora se encuentra con la licencia de por medio.

Por qué importa

Si ya corrés software CUDA en hardware que no es de Nvidia, la pregunta práctica es cómo lo estás haciendo. Por un translation layer, ese camino ahora queda explícitamente fuera según la licencia; por código portado y compilado nativamente, no cambia nada. Para un equipo que está evaluando AMD, Intel u otra GPGPU, la cláusula es un item concreto para el checklist: verificar que el software específico de tu workload está portado a la plataforma objetivo y no depende de una capa de compatibilidad. Nvidia no dice nada público sobre enforcement, y esto es un término de licencia, no un lock técnico, así que no frena la competencia de hardware en sí. Pero meter la prohibición en el installer marca que Nvidia ve a los translation layers como una amenaza que conviene cerrar, y mientras los rivales sigan mejorando su soporte nativo, el camino que se mantiene limpio es el portado.

Fuente: tomshardware.com

Más noticias

← Todas las noticias