viernes, 4 de octubre de 2024

Así es Driver Experiments, el «NVIDIA Inspector» de AMD, configura parámetros y optimiza el rendimiento como quieras

Si bien hace años las GPU de AMD eran consideradas una mala opción de compra debido a sus peores drivers comparados a NVIDIA, no podemos decir lo mismo a día de hoy. Los controladores de AMD no son perfectos, pero si podemos notar el gran cambio a mejor que han dado y además incluyen muchas tecnologías y opciones en el software Adrenalin. Si bien este ya parece ser lo suficientemente complejo para el usuario medio, ahora AMD ha lanzado Driver Experiments dedicado a desarrolladores que podrán realizar cambios gráficos de bajo nivel sin modificar el código fuente.

Las tarjetas gráficas pueden llegar a ser muy potentes, pero sin unos drivers, no podemos sacarles todo el provecho. Ya hemos visto en muchas ocasiones como el software limita las capacidades del hardware y en el caso de los controladores de las GPU, esto ha pasado recientemente con las GPU de Intel. Cuando estas se lanzaron, los drivers estaban tan mal que las GPU rendían incluso por debajo de la gama baja a pesar de ser gama media. En el momento en el que Intel se puso a desarrollar drivers competentes, es cuando vimos grandes mejoras de rendimiento que pusieron a las GPU a su nivel correspondiente.

AMD Driver Experiments permite a los desarrolladores de videojuegos desactivar opciones gráficas como Ray Tracing o mesh shaders en juegos

AMD y NVIDIA han estado muy por delante de Intel en cuestión de drivers, aunque para ello han tenido que invertir años y grandes cantidades de recursos para poder llegar a donde están ahora. En el caso de NVIDIA, esta solía tener los mejores controladores de GPU hace años, pero AMD empezó a progresar en gran medida y con su software Adrenalin ha ido añadiendo cada vez más opciones y ajustes. Aun así, la compañía se quedó con ganas de más y debido a esto ha lanzado Driver Experiments, una herramienta que nos recuerda a NVIDIA Inspector.

AMD Driver Experiments proporciona acceso de bajo nivel para configurar gráficos sin tener que modificar el código fuente. Esto permite desbloquear opciones gráficas que antes solo estaban disponibles para desarrolladores de drivers y permitirá a los estudios de videojuegos optimizar sus obras. Esta nueva herramienta permite desactivar estas tecnologías para mejorar el rendimiento:

  • Sombreado de malla
  • Sampler feedback
  • Ray Tracing
  • Sombreado de tasa variable (VRR)
  • GPU Work Graphs
  • Baja precisión: deshabilita la compatibilidad con números de cola flotante de 16 bits y puede llegar a mejorar el rendimiento realizando cálculos más rápidos o provocar errores, por lo que aquí hay que hacer pruebas para ver si vale la pena.
  • Soporte nativo de tipos de 16 bits: impide que los juegos y aplicaciones usen 16 bits y en su lugar emplean números de precisión completa.
  • Extensiones de proveedor de AMD: se desactivan varias extensiones personalizadas de AMD que pueden ayudar a la hora de detectar errores producidos por estas.
  • Soporte de cola de computación: al activar esto se depuran problemas que hayan sido generados por el cómputo asíncrono.
  • Soporte de cola de copia: si elegimos esto se desactivarán los comandos de copia y se ejecutarán en la cola de gráficos en su lugar, permitiendo solventar errores.

Se pueden deshabilitar funciones de optimización para detectar errores y solventar problemas de rendimiento

  • Deshabilitar optimizaciones de coma flotante: permite saltar algunas optimizaciones que se realizan en el código del sombreador relacionadas con los números de coma flotante y como no, de nuevo se enfoca a resolver errores.
  • Desactivar optimizaciones del compilador de shaders: si activamos esto puede provocar que los sombreadores tarden más en ejecutarse y también sirve para ver si hay errores. En caso de que ocurran estos pueden deberse a las draw calls, la sincronización o una barrera que falta.
  • Deshabilitar optimizaciones de barrera: estas se encargan de quitar las sincronizaciones y barreras entre draw calls para garantizar corrección y máximo rendimiento. Puede disminuir el rendimiento, pero ayuda a encontrar errores.
  • Desactivar optimizaciones de estructuras de aceleración: al quitar esto nos quedamos sin las optimizaciones relacionadas con la aceleración de Ray Tracing. Esto aumenta el tamaño en la memoria y reduce el rendimiento, aunque funciona para situaciones donde queremos hacer un debug.
  • Forzar el tamaño de onda de shader: permite forzar un modo de compilación específico para los shaders y así usarse para comparar el rendimiento de un mismo shader a diferentes tamaños de onda.
  • Deshabilitar Ray Tracing Shader inlining: activar esto permitirá forzar al compilar usar el método indirecto a la hora de generar rayos. Si se acorta el tiempo que tarda un juego en iniciarse y cargarse mientras crea PSOs (Pipeline State Objects), indica que los PSOs ocupan mucho tiempo.
  • Desactivar el shader caché: esto afectará al tiempo que tardan en crearse los PSOs y nos permitirá tener una medición más fiable de este proceso.
  • Deshabilitar V-Sync: una de las características de seguridad que vemos al final de la lista y que todo jugador conoce, pues al desactivarla tendremos una mayor fluidez a cambio de poder sufrir tearing en la pantalla.

Saludos.

No hay comentarios:

Publicar un comentario

Por favor sé respetuoso/a y escribe adecuadamente. Gracias.