GPUOpen se anunció el 15 de diciembre de 2015, [3] [4] [2] [5] [6] y se lanzó el 26 de enero de 2016.
Razón fundamental
Nicolas Thibieroz, gerente sénior de ingeniería de juegos a nivel mundial de AMD, sostiene que "puede ser difícil para los desarrolladores aprovechar su inversión en I+D tanto en consolas como en PC debido a la disparidad entre las dos plataformas" y que "las bibliotecas propietarias o las cadenas de herramientas con API de " caja negra " impiden que los desarrolladores accedan al código para fines de mantenimiento, portabilidad u optimización". [7] Dice que las próximas arquitecturas, como la serie RX 400 de AMD , "incluyen muchas características que no están expuestas hoy en día en las API de gráficos de PC".
GPUOpen unifica muchas de las herramientas y soluciones de AMD que antes estaban separadas en un solo paquete, y además las convierte en código abierto bajo la licencia MIT. [4] GPUOpen también facilita a los desarrolladores el acceso a la GPU de bajo nivel. [9]
Además, AMD quiere conceder a los desarrolladores interesados un tipo de "acceso directo" de bajo nivel a sus GPU basadas en GCN que supere las posibilidades de Direct3D 12 o Vulkan . AMD mencionó, por ejemplo, un acceso de bajo nivel a los motores de cómputo asíncrono (ACE). Los ACE implementan "cómputo asíncrono", pero no se pueden configurar libremente ni con Vulkan ni con Direct3D 12.
GPUOpen se compone de varios componentes principales, herramientas y SDK. [2]
FidelityFX Super Resolution ( FSR ) se utiliza para aumentar la resolución de una imagen de entrada. Existen varias versiones de FSR con una técnica de aumento de resolución y una calidad de imagen distintivas:
FSR 1 es un escalador espacial basado en el algoritmo Lanczos o similar a él, que requiere una imagen con menor resolución y suavizado de bordes. También realiza la reconstrucción de bordes y la inversión de gradiente. A esto le sigue un paso de nitidez adaptativa al contraste (RCAS) para reintroducir detalles en la imagen final. (Consulte la cita que aparece a continuación para obtener más información)
"FSR se compone de dos pases principales:
Un paso de mejora de escala llamado EASU (Edge-Adaptive Spatial Upsampling) que también realiza la reconstrucción de bordes. En este paso se analiza el marco de entrada y la parte principal del algoritmo detecta las inversiones de gradiente (básicamente, observa cómo difieren los gradientes vecinos) de un conjunto de píxeles de entrada. La intensidad de las inversiones de gradiente define los pesos que se aplicarán a los píxeles reconstruidos en la resolución de pantalla.
Un pase de nitidez llamado RCAS (Robust Contrast-Adaptive Sharpening) que extrae detalles de píxeles en la imagen ampliada. " [12]
FSR 2 es un escalador temporal basado en un Lanczos modificado que requiere una imagen con resolución más baja y utiliza datos temporales (como vectores de movimiento e historial de cuadros) y luego aplica su propio pase antialiasing que reemplaza la solución antialiasing temporal del juego.
FSR 3 añade generación de cuadros y "antialiasing nativo". La generación de cuadros aumenta la velocidad de cuadros percibida de un juego. El "antialiasing nativo", similar al DLAA de Nvidia, se puede utilizar sin escalado para mejorar el antialiasing; también se puede combinar con generación de cuadros y Anti-Lag+. [13] [14]
Los ajustes preestablecidos estándar para FSR de AMD se pueden encontrar en la siguiente tabla. Tenga en cuenta que estos ajustes preestablecidos no son la única forma en que se puede utilizar el algoritmo, son simplemente ajustes preestablecidos para resoluciones de entrada/salida. Algunos títulos, como Dota 2, han ofrecido controles deslizantes de resolución para ajustar con precisión el porcentaje de escala o escalar dinámicamente la resolución de renderizado interna según el límite de FPS. AMD también ha creado una herramienta de interfaz de línea de comandos que permite al usuario mejorar la escala de cualquier imagen utilizando FSR1/EASU además de otros métodos de sobremuestreo como la interpolación bilineal . También permite al usuario ejecutar varias etapas del flujo de trabajo de FSR, como RCAS de forma independiente. [15]
FSR 2 también se puede modificar en casi cualquier juego compatible con DLSS intercambiando la DLL DLSS con una DLL de capa de traducción que asigna las llamadas API DLSS a las llamadas API FSR 2. [33]
^ Las versiones de FSR indicadas en cursiva presentan revisiones o actualizaciones menores.
^ No es necesario implementar el algoritmo utilizando estos ajustes preestablecidos; es posible que el implementador defina resoluciones de entrada y salida personalizadas.
^ El factor de escala lineal utilizado para aumentar la resolución de entrada a la resolución de salida. Por ejemplo, una escena renderizada a 540p con un factor de escala de 2,00x tendría una resolución de salida de 1080p.
^ La escala de renderizado lineal, comparada con la resolución de salida, que la tecnología utiliza para renderizar escenas internamente antes del sobremuestreo. Por ejemplo, una escena de 1080p con una escala de renderizado del 50 % tendría una resolución interna de 540p.
Generación de cuadros
FSR 3 agrega generación de cuadros, una técnica que crea nuevos cuadros entre los existentes mediante el uso de interpolación de movimiento . FSR 3, que se lanzará en septiembre de 2023, utiliza una combinación de FSR 2 y análisis de flujo óptico, que se ejecuta mediante computación asincrónica (a diferencia del DLSS 3 de Nvidia, que utiliza hardware dedicado). Debido a que FSR 3 utiliza una solución basada en software, es compatible con GPU de AMD, Nvidia e Intel, así como con la novena generación de consolas de videojuegos . Para combatir la latencia adicional inherente al proceso de generación de cuadros, AMD tiene una función a nivel de controlador llamada Anti-Lag, que solo se ejecuta en GPU AMD. [13]
AMD Fluid Motion Frames (AFMF) es una tecnología de generación de cuadros a nivel de controlador que se lanzará en el primer trimestre de 2024 y es compatible con todos los juegos DirectX 11 y DirectX 12, pero se ejecuta en GPU RDNA 2 y RDNA 3. AFMF utiliza análisis de flujo óptico, pero no vectores de movimiento, por lo que solo puede interpolar un nuevo cuadro entre dos cuadros renderizados de forma tradicional. AFMF actualmente no es compatible con VSYNC. [13]
Herramientas
El directorio oficial de AMD enumera: [34]
HLSL2GLSL, que fue lanzado por ATI Technologies bajo la licencia BSD en 2006, no forma parte de GPUOpen. Queda por ver si habrá herramientas similares para SPIR-V , así como el lanzamiento oficial de Vulkan (API) . El código fuente que se ha definido como parte de GPUOpen también forma parte del núcleo Linux (por ejemplo, amdgpu y amdkfd [39] ), Mesa 3D y LLVM.
Kits de desarrollo de software
Computación profesional
A partir de 2022, el ecosistema de software computacional de AMD se reagrupa bajo el metaproyecto ROCm .
La "Iniciativa Boltzmann" de AMD (nombrada en honor a Ludwig Boltzmann ) se anunció en noviembre de 2015 en SuperComputing15 [41] [42] [43] [44] [45] y se convirtió en producto de la plataforma Radeon Open Compute (ROCm). Su objetivo es proporcionar una alternativa a CUDA de Nvidia que incluye una herramienta para portar el código fuente de CUDA a código fuente portátil (HIP) que se puede compilar tanto en HCC como en NVCC .
Controlador Radeon Open Compute Kernel (ROCK)
Tiempo de ejecución de Radeon Open Compute Runtime (ROCR)
HCC: Compilador de cómputo heterogéneo
HIP: Interfaz de computación heterogénea de C++ para portabilidad
Biblioteca hcFFT para la transformada rápida de Fourier escrita en C++ optimizado para HCC
Disponibilidad
GPUOpen está disponible bajo la licencia MIT para el público general a través de GitHub a partir del 26 de enero de 2016. [4]
Existe una interrelación entre GPUOpen y proyectos de software libre bien establecidos y difundidos, por ejemplo, el kernel de Linux , Mesa 3D y LLVM .
^ AMD: GPUOpen (26 de enero de 2016). "Bienvenido a GPUOpen". Archivado desde el original el 5 de marzo de 2016.
^ abc Tom's Hardware (15 de diciembre de 2015). "AMD GPUOpen: redoblando la apuesta por el desarrollo de código abierto" . Consultado el 24 de enero de 2016 .
^ Maximum PC (15 de diciembre de 2015). «AMD Radeon Technologies Group Summit: GPUOpen y software» . Consultado el 24 de enero de 2016 .
^ abc AnandTech (15 de diciembre de 2015). «Paquete de herramientas para desarrolladores GPUOpen de AMD en 2016» . Consultado el 24 de enero de 2016 .
^ Heinz Heise (16 de diciembre de 2015). "GPUOpen de iniciativa de código abierto de AMD: Direkte GPU-Kontrolle und bessere Treiber" (en alemán).
^ Hardware de juegos para PC [en alemán] (16 de diciembre de 2015). "AMD GPU Open: el software de Radeon será 100 % de código abierto". Hardware de juegos para PC (en alemán).
^ "Es hora de abrir la GPU". Archivado desde el original el 5 de marzo de 2016.
^ wccftech.com (15 de diciembre de 2015). "Se anuncia GPUOpen, la respuesta de AMD a GameWorks de Nvidia" . Consultado el 24 de enero de 2016 .
^ HotHardware (15 de diciembre de 2015). "AMD se pasa al código abierto, anuncia la iniciativa GPUOpen, un nuevo compilador y controladores para Linux y HPC" . Consultado el 24 de enero de 2016 .
^ "AMD FidelityFX™ Super Resolution 1 (FSR 1)". AMD GPUOpen . Consultado el 25 de mayo de 2024 .
^ abcd "AMD revela la esperada tecnología FSR 3 y la generación de cuadros para todos los juegos DX11/DX12". EuroGamer. 25 de agosto de 2023. Consultado el 6 de septiembre de 2023. FSR 3 es una solución de generación de cuadros que funciona de manera similar a DLSS 3 de Nvidia, combinando la generación de cuadros (Fluid Motion Frames) con el aumento de resolución (FSR 2) y la reducción de latencia (Anti-Lag+) en una pequeña cantidad de juegos compatibles, con Forspoken e Immortals of Aveum listos para estrenar la tecnología por primera vez. FSR 3 funcionará en tarjetas gráficas Radeon, así como en GPU Nvidia e Intel.
^ " "AMD afirma que no hay nada que impida que Starfield agregue Nvidia DLSS". The Verge. 24 de agosto de 2023 . Consultado el 6 de septiembre de 2023 .
^ GPUOpen-Effects/FidelityFX-CLI, Efectos GPUOpen, 21 de mayo de 2024 , consultado el 25 de mayo de 2024
^ "AMD FidelityFX Super Resolution llegará pronto a GPUOpen - AMD GPUOpen". AMD GPUOpen . 1 de junio de 2021 . Consultado el 21 de marzo de 2023 .
^ "El código fuente de FidelityFX Super Resolution (FSR) ya está aquí, junto con la compatibilidad con Unity y UE4 también. - AMD GPUOpen". AMD GPUOpen . 15 de julio de 2021 . Consultado el 21 de marzo de 2023 .
^ Sommefeldt, Rys (16 de noviembre de 2021). «Lanzamiento de FidelityFX FSR v1.0.2 · GPUOpen-Effects/FidelityFX-FSR · GitHub». GitHub . Consultado el 23 de marzo de 2023 .
^ ab "El SDK 1.0 de AMD FidelityFX ya está disponible en GPUOpen - AMD GPUOpen". AMD GPUOpen . 11 de julio de 2023 . Consultado el 11 de septiembre de 2023 .
^ "Es hora de AMD FidelityFX Super Resolution 2.0 - AMD GPUOpen". AMD GPUOpen . 17 de marzo de 2022 . Consultado el 23 de marzo de 2023 .
^ "¡Es hora de ver el código fuente de FSR 2! - AMD GPUOpen". AMD GPUOpen . 22 de junio de 2022 . Consultado el 23 de marzo de 2023 .
^ "Es hora de mejorar aún más FSR 2: ¡conozca FSR 2.1! - AMD GPUOpen". AMD GPUOpen . 8 de septiembre de 2022 . Consultado el 23 de marzo de 2023 .
^ Sommefeldt, Rys (15 de septiembre de 2022). «Lanzamiento de FidelityFX FSR2 v2.1.1 · GPUOpen-Effects/FidelityFX-FSR2 · GitHub». GitHub . Consultado el 23 de marzo de 2023 .
^ Sommefeldt, Rys (19 de octubre de 2022). «Lanzamiento de FidelityFX FSR2 v2.1.2 · GPUOpen-Effects/FidelityFX-FSR2 · GitHub». GitHub . Consultado el 23 de marzo de 2023 .
^ "¡No cruces los arroyos! Acaba con más fantasmas con el código fuente de FidelityFX Super Resolution 2.2 - AMD GPUOpen". AMD GPUOpen . 16 de febrero de 2023 . Consultado el 23 de marzo de 2023 .
^ "Revisión de AMD FidelityFX Super Resolution 2.2.1 - AMD GPUOpen". AMD GPUOpen . 9 de junio de 2023 . Consultado el 14 de junio de 2023 .
^ "FidelityFX Super Resolution 2.2.2 (FSR2) - SDK de FidelityFX - AMD GPUOpen". AMD GPUOpen . Consultado el 11 de septiembre de 2023 .
^ "Con un estado de ánimo estacional, en un movimiento fluido hemos generado el repositorio de código fuente de GitHub de AMD FSR 3 para desarrolladores de juegos de todo el mundo. - AMD GPUOpen". AMD GPUOpen . 14 de diciembre de 2023 . Consultado el 22 de marzo de 2024 .
^ Sommefeldt, Rys (14 de diciembre de 2023). «Lanzamiento del SDK FidelityFX para FSR3 v3.0.4 · GPUOpen-LibrariesAndSDKs/FidelityFX-SDK · GitHub». GitHub . Consultado el 22 de marzo de 2024 .
^ Walker, Alex (23 de junio de 2021). «FSR de AMD solo admite 7 juegos, pero ya es muy prometedor». Kotaku Australia . Consultado el 11 de julio de 2021 .
^ Mujtaba, Hassan (23 de marzo de 2022). "AMD detalla FSR 2.0: compatibilidad con NVIDIA GeForce 10 y versiones posteriores, escalado de alta calidad sin aprendizaje automático, más modos de calidad". Wccftech . Consultado el 24 de marzo de 2022 .
^ Schiesser, Tim (11 de octubre de 2023). "Análisis de la generación de cuadros AMD FSR 3". TechSpot . Consultado el 5 de octubre de 2024 .
^ Sims, Daniel (5 de julio de 2022). "El mod no oficial de FSR 2.0 llega a varios juegos más, incluidos Dying Light 2, RDR 2 y Death Stranding". TechSpot .
^ AMD GPUOpen (19 de abril de 2016). «CodeXL 2.0 se convierte en código abierto». Archivado desde el original el 27 de junio de 2018. Consultado el 21 de abril de 2016 .
^ AMD GPUOpen (26 de enero de 2016). "CLI del analizador estático CodeXL".
^ AMD GPUOpen (26 de enero de 2016). «Crea tu propio complemento GPU PerfStudio Direct3D 12». Archivado desde el original el 9 de enero de 2019. Consultado el 27 de enero de 2016 .
^ AMD GPUOpen (26 de enero de 2016). "¿Ha modificado sus modelos 3D?". Archivado desde el original el 9 de enero de 2019. Consultado el 27 de enero de 2016 .
^ "Núcleo de Linux 4.2/controladores/gpu/drm/amd".
^ Heinz Heise (4 de marzo de 2015). "LiquidVR: Neues Virtual-Reality-SDK von AMD" (en alemán).
^ AnandTech (16 de noviembre de 2015). "AMD@SC15: Se anuncia la iniciativa Boltzmann: compiladores C++ y CUDA para GPU AMD".
^ Heinz Heise (17 de noviembre de 2015). "Supercomputadora: AMD startet Software-Offensive" Boltzmann"" (en alemán).
^ 3dcenter.org (16 de noviembre de 2015). "La iniciativa AMDs Boltzmann geht direkt gegen nVidias CUDA" (en alemán).{{cite web}}: CS1 maint: numeric names: authors list (link)
^ AMD (16 de noviembre de 2015). "AMD lanza la 'Iniciativa Boltzmann'".
^ AMD (16 de noviembre de 2015). "Un momento decisivo para la computación heterogénea".
Enlaces externos
Sitio web oficial
Lista de juegos que admiten el escalado de alta fidelidad - Lista movida de Wikipedia a PCGamingWiki