Cycles X en GPU AMD está disponible para Blender 3

Cycles X en GPU AMD está disponible para Blender 3.0. Las compilaciones iniciales de Cycles X se ejecutaban únicamente en GPU Nvidia. Este cambio amplía fronteras en el hardware dando cabida a más artistas.

Cycles X, es en sí una reescritura del renderizador Cycles de Blender que se presenta en la versión 3. El cambio más significativo es que ahora es compatible con las GPU AMD utilizando HIP. Un sistema de código abierto que permite que el código se ejecute tanto en hardware Nvidia CUDA como AMD.

La funcionalidad está disponible en la versión beta actual de Blender 3.0 para cualquier persona con el nuevo controlador beta de Radeon Software de AMD.

En el momento del anuncio oficial, el desarrollador de Cycles X, Brecht van Lommel, comentó que el equipo planeaba recuperar el soporte para el hardware de AMD e Intel. Pero no dijo cuándo ni de qué forma.

Para los usuarios de AMD, ambas preguntas quedan respondidas por una publicación en el Blog de desarrolladores de Blender. El gerente de producto de AMD, Brian Savery, anuncia oficialmente que Cycles X admitirá GPU AMD a través de HIP.

Cycles X en GPU AMD está disponible para Blender
Cycles X en GPU AMD está disponible para Blender

¿Qué es HIP?

Una API desarrollada en código C++ de código abierto y con lenguaje de kernel. HIP es la abreviatura de Heterogeneous computing Interface for Portability. HIP permite a los desarrolladores crear software que se ejecuta en GPU Nvidia y AMD a partir de la misma base de código.

A veces descrito como una forma de portar herramientas utilizando el marco informático CUDA de Nvidia a las GPU AMD. HIP ha existido desde hace años como parte de la plataforma ROCm (Radeon Open Compute) de AMD.

Sin embargo, esta es la primera vez que vemos que se utiliza para software de medios y entretenimiento. Todos los casos anteriores son para herramientas de simulación y visualización científica.

¿Funcionará Cycles X en las GPU AMD?

AMD no ha publicado ningún punto de referencia para saber cómo funcionará Cycles X en sus GPU, pero el rendimiento teóricamente debería ser similar a una tarjeta CUDA equivalente.

La documentación online describe que HIP tiene poco o ningún impacto en el rendimiento sobre la codificación directamente en modo CUDA. Esta apreciación se confirma por el Laboratorio Nacional Oak Ridge de los Estados Unidos, que utilizó la plataforma para permitir que su software interno basado en CUDA se ejecutara en GPU AMD.

Sin embargo, además de CUDA, Cycles X utiliza la API OptiX de Nvidia para acelerar el trazado de rayos (RayTrace) de la GPU.

Eso puede significar que las GPU Nvidia actuales aún superan a las tarjetas AMD, por lo que sería interesante ver algunas puntuaciones de referencia independientes.

La Fundación Blender ha anunciado que admitirá la API de código abierto Vulkan para el trazado de rayos de GPU en Eevee. El motor de renderizado en tiempo real de Blender, pero aún no han realizado el anuncio equivalente para Cycles X.

¿En qué GPU AMD se ejecutará Cycles X?

AMD ha validado el soporte para Cycles X en su serie Radeon RX 6000, su generación actual de GPU de consumo, y la Radeon Pro W6800, su actual tarjeta de estación de trabajo de gama alta.

Sin embargo, la implementación solo requiere una tarjeta RDNA o posterior, por lo que también puede funcionar en otras GPU AMD más antiguas.

El anuncio oficial de Brian Savery

Tenemos algunos desarrollos interesantes para compartir sobre el soporte de tarjetas gráficas AMD. Blender 3.0 fue anunciado con algunas reescrituras al motor de renderizado Cycles (AKA Cycles X). Esto eliminó la compatibilidad de OpenCL para la representación en GPU AMD por razones técnicas y de rendimiento.

Para ayudar a abordar esto, AMD ha estado trabajando muy de cerca con Blender para mejorar el soporte para la representación de GPU en Blender utilizando la API AMD HIP, para garantizar que los usuarios de tarjetas gráficas AMD puedan aprovechar todas las mejoras que se encuentran en Cycles X.

Estará en Blender 3.0, previsto para diciembre de 2021

Las versiones anteriores de Cycles, el trazador de rutas basado en la física de Blender, admitía la representación a través del marco OpenCL. OpenCL es un lenguaje de programación basado en C que permite ejecutar programas en muchas GPU que lo admiten. Sin embargo, en el futuro, nuestros socios en Blender esperaban fusionar el código OpenCL separado con la CPU C ++ y el código de renderizado CUDA.

En resumen, con Cycles X, estaban buscando una manera de compilar una sola base de código que pudiera usarse en todos los diferentes dispositivos en los que Cycles puede renderizar. Incluidas las tarjetas gráficas AMD.

Afortunadamente, AMD tiene una solución de código abierto para desarrolladores solo para eso. HIP (Heterogeneous-computing Interface for Portability) es una API de tiempo de ejecución de C ++ y lenguaje de kernel que permite a los desarrolladores crear aplicaciones portátiles para GPU AMD y Nvidia a partir de un solo código fuente.

Esto permite a los desarrolladores de Blender Cycles escribir un conjunto de kernels de renderizado y ejecutarlos en múltiples dispositivos. La otra ventaja es que las herramientas con HIP permiten una fácil migración del código CUDA existente a algo más genérico.

AMD ha estado trabajando estrechamente con Blender para agregar soporte para dispositivos HIP en Blender 3.0. Este código ya está disponible en la última versión beta de Blender 3.0.

Cycles X en GPU AMD está disponible para Blender 3
Cycles X en GPU AMD está disponible para Blender 3

HIP Render Device para Cycles X

Para usar esto con una tarjeta gráfica AMD compatible, se necesita un controlador AMD Radeon Software actualizado. Hoy estamos lanzando un controlador beta de Windows para los usuarios que deseen probar nuestro soporte para Cycles X en la última versión beta de Blender 3.0.

Como esta es una versión beta, tanto de nuestro controlador como de Blender 3.0, nuestro soporte para Cycles X se encuentra actualmente en versión preliminar. Tendremos más que compartir sobre nuestro soporte en diciembre, cuando se espera que se lance Blender 3.0. (Se espera soporte para Linux Q1 2022)

Compatibilidad HIP Render Device para Cycles X

Cycles X en Blender 3.0 está habilitado en tarjetas gráficas AMD con arquitectura RDNA y versiones posteriores. AMD ha validado la compatibilidad con las siguientes tarjetas gráficas de escritorio.

AMD Radeon PRO W6800, W6800, 6900 XT, 6800 XT, 6800, 6700 XT, 6600 XT y 6600.

Por si te interesa el código fuente de HIP, lo puedes ver en GitHub. También tienes más información y comentarios en el foro, sigue leyendo…