GPUOpen es un paquete de softwarede middleware desarrollado originalmente por Radeon Technologies Group de Advanced Micro Devices (AMD) que ofrece efectos visuales avanzados para juegos de computadora. Fue lanzado en 2016. GPUOpen sirve como una alternativa y un competidor directo de Nvidia GameWorks. GPUOpen es similar a GameWorks en que abarca varias tecnologías gráficas diferentes como sus componentes principales que antes eran independientes y estaban separados entre sí.[1] Sin embargo, GPUOpen es un software de código completamente abierto, a diferencia de GameWorks, que es propietario y cerrado.
Historia
GPUOpen se anunció el 15 de diciembre de 2015,[1][2][3][4][5] y se lanzó el 26 de enero de 2016.
Razón fundamental
Nicolas Thibieroz, gerente sénior de ingeniería de juegos en todo el mundo de AMD, argumenta 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 las API "black box" evita que los desarrolladores accedan al código con fines de mantenimiento, portabilidad u optimizaciones".[6] Él dice que las próximas arquitecturas, como la serie RX 400 de AMD, "incluyen muchas características que no están expuestas hoy en las API de gráficos de PC".
GPUOpen unifica muchas de las herramientas y soluciones previamente separadas de AMD en un solo paquete, y también las abre completamente bajo la licencia MIT.[3] GPUOpen también facilita que los desarrolladores obtengan acceso a la GPU de bajo nivel.[8]
Además, AMD quiere otorgar a los desarrolladores interesados el tipo de "acceso directo" de bajo nivel a sus GPU basadas en GCN, que supera las posibilidades de Direct3D 12 o Vulkan. AMD mencionó, por ejemplo, un acceso de bajo nivel a los motores informáticos asíncronos (ACE). El ACE implementa "Cómputo asíncrono", pero no se puede configurar libremente en Vulkan o Direct3D 12.
GPUOpen se compone de varios componentes principales, herramientas y SDK.[1]
Esta biblioteca otorga acceso a una implementación de profundidad de campo optimizada para la arquitectura de GPU GCN a través de un sombreador de cómputo.
Este algoritmo proporciona funcionalidad de eliminación de ruido para sombras con trazado de rayos y reflejos con trazado de rayos o espacio de pantalla.
Este algoritmo se usa para aumentar la muestra de una imagen o cuadro a una resolución más alta utilizando solo la información espacial proporcionada en el cuadro de entrada.
Este algoritmo se utiliza para aumentar la escala de fotogramas a una resolución más alta utilizando la información temporal proporcionada por los fotogramas de entrada.
FidelityFX Super Resolution
FidelityFX Super Resolution (FSR) se utiliza para aumentar la muestra de una imagen de entrada a una resolución más alta. Hay dos versiones de FSR con una técnica de escalado y una calidad de imagen distintivas. FSR 1 es un escalador espacial basado en el algoritmo Lanczos que requiere una imagen de menor resolución con alias, mientras que FSR 2 es un escalador temporal basado en un Lanczos modificado que requiere una imagen con alias de menor resolución y utiliza los datos temporales (como vectores de movimiento e historial de fotogramas), y luego aplica su propio pase de suavizado que reemplaza la solución de suavizado temporal del juego. 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 usar el algoritmo, son simplemente ajustes preestablecidos para resoluciones de entrada/salida. Ciertos títulos, como Dota 2, han ofrecido controles deslizantes de resolución para ajustar el porcentaje de escalado o escalar dinámicamente la resolución de procesamiento interna según el límite de FPS.
Historial de versiones
Versión
Fecha de lanzamiento
Características destacadas
1.0 / 1.0.1
junio 2021
Lanzamiento de FidelityFX Super Resolution (FSR), código fuente disponible en julio de 2021.[11][12]
1.0.2
noviembre 2021
Revisión de nitidez excesiva Robust Contrast-Adaptive Sharpening (RCAS).[13]
2.0.1 / 2.0.1a
marzo 2022
Lanzamiento de FidelityFX Super Resolution 2.0 (FSR2), código fuente disponible en junio de 2022.[14][15]
2.1.0
septiembre 2022
Efecto fantasma reducido y mejora de la calidad de escalado. Farming Simulator 2022 fue uno de los primeros en adoptarlo con el parche 1.7.1.[16]
FSR 2 también se puede modificar en casi cualquier juego compatible con DLSS intercambiando la DLL de DLSS con una DLL de capa de traducción que mapea las llamadas de la API de DLSS a las llamadas de la API de FSR 2.[22]
Conjunto de herramientas de desarrollo de software que incluye un depurador de GPU, un perfilador de GPU, un perfilador de CPU, un analizador de núcleo OpenCL estático y varios complementos.[24]
Analizador estático para AMD CodeXL
amd-codexl-analyzer
Direct3D, OpenGL, OpenCL
Linux
Windows 64bit
Compilador fuera de línea y análisis de rendimiento CLI: herramienta para procesar: núcleos OpenCL, sombreadores HLSL y sombreadores GLSL parte del conjunto de herramientas AMD CodeXL requiere la instalación de Radeon Software Crimson Edition o AMD Catalyst para ejecutar esta herramienta.[25]
Un complemento para GPU PerfStudio GPU perfstudio[26]
Tootle
amd-tootle
agnostic
Linux
Windows
Herramienta de optimización de orden de triángulos; desarrollado originalmente en 2006; se puede integrar fácilmente como parte de una cadena de herramientas de preprocesamiento de renderizado o malla[27] Cf. http://mgarland.org/files/papers/quadrics.pdf
Habiendo sido lanzado por ATI Technologies bajo la licencia BSD en 2006, HLSL2GLSL no es parte de GPUOpen. Queda por ver si habrá disponibles herramientas similares para SPIR-V, al igual que el lanzamiento oficial de Vulkan (API). El código fuente que se ha definido como parte de GPUOpen también forma parte del kernel de Linux (por ejemplo, amdgpu y amdkfd[28]), Mesa 3D y LLVM.
mejora la suavidad de la realidad virtual.[29] El objetivo es reducir la latencia entre el hardware para que el hardware pueda seguir el ritmo del movimiento de la cabeza del usuario, eliminando el mareo por movimiento. Un enfoque particular está en las configuraciones de doble GPU donde cada GPU ahora renderizará para un ojo individualmente de la pantalla
facilita el uso de los bloques SIP de aceleración de compresión de video de AMD VCE (codificador H.264) y UVD (descodificador H.264) para "juegos en la nube"/renderización fuera del sitio
La "Iniciativa Boltzmann" de AMD (llamada así por Ludwig Boltzmann) se anunció en noviembre de 2015 en SuperComputing15[30][31][32][33][34] y se convirtió en la plataforma Radeon Open Compute (ROCm). Su objetivo es proporcionar una alternativa a CUDA de Nvidia, que incluye una herramienta para transferir el código fuente de CUDA al 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 Radeon Open Compute Runtime (ROCR)
HCC: Heterogeneous Compute Compiler
HIP: C++ Heterogeneous-Compute Interface for Portability
↑No es necesario implementar necesariamente 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 el muestreo de 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, en comparación con la resolución de salida, que la tecnología usa para renderizar escenas internamente antes de aumentar la muestra. Por ejemplo, una escena de 1080p con una escala de renderizado del 50 % tendría una resolución interna de 540p.