Resizable BAR: ¿Cómo consigue aumentar los FPS?
Resizable BAR es una tecnología de la que se está hablando mucho últimamente, y es que con ella se puede ganar un extra de rendimiento gráfico sin tener que gastar un solo euro adicional. Antes de nada, hay que decir que tanto AMD como NVIDIA utilizan esta tecnología, solo que AMD la ha terminado llamando Smart Access Memory (AMD SAM). Esta tecnología se basa en hacer un atajo para la información que va desde la gráfica hasta la CPU, de manera que se utiliza un bus directo y los datos llegan bastante antes que sin ella.
A pesar de que Resizable BAR está referenciado ya en la especificación PCIe desde la versión 2.0, no ha sido hasta ahora cuando se le ha comenzado a sacar provecho. La versión PCIe 3.0 añadía numerosos cambios a la tecnología y sentaba las bases de lo que es hoy en día.
Hace tiempo pudimos saber de la implementación de Resizable BAR tanto en NVIDIA como en AMD, pero hasta que no pasaron unos meses no se ha podido probar de buena manera. Pero antes de seguir, vamos a ver de qué trata concretamente Resizable BAR y cómo funciona.
Resizable Base Address Register, que es el nombre completo, se basa en utilizar el bus PCIe para comunicaciones entre los chips VRAM de la gráfica y la CPU. Sin Resizable BAR, estas comunicaciones entre VRAM y CPU se realizan mediante un búfer de datos de 256 MB, lo que implica que desde la gráfica se dirijan a este bus, se llene y que entonces vayan a la CPU, incluyendo latencias adicionales que se notan con alta carga gráfica.
Con Resizable BAR se permite la modificación de la capacidad de dicho búfer, consiguiendo que la comunicación sea completamente fluida, ya que el bus PCIe 4.0 de 16 líneas (los típicos de las tarjetas gráficas) tiene un ancho de banda de 31.5 GB/s. Y no solo eso, Resizable BAR también permite una comunicación en paralelo, de manera que se pueden utilizar varios búfers simultáneamente de una determinada capacidad.
Esto implica que una gráfica con 32 GB de VRAM pueda descargar toda su información en un solo segundo hacia la CPU. En entornos reales, en juegos exigentes con pantallas cambiantes e información nueva por todos lados, esto resulta en una ventaja importante, sobre todo de cara al futuro cuando existan juegos más exigentes. La imagen generada por la GPU a cada instante debe retransmitirse rápidamente hacia la CPU para que la interprete y pueda aparecer por pantalla, cosa que resulta imperceptible para nosotros dado lo rápido que ocurre.
Si tenemos un juego de mundo abierto por ejemplo, con una pantalla recién cargada de 4 GB (por poner un ejemplo), sin Resizable BAR la memoria gráfica tendría que realizar 16 iteraciones completas con la CPU, dado que el límite del búfer es de 256 MB.
Si nos movemos un poco por el mundo, rápidamente comenzarán a renderizarse unas zonas y otras a desaparecer de la pantalla, lo que implica que se deben modificar los datos adecuados, que fácilmente superarán esos 256 MB de limitación. Con Resizable BAR este problema se soluciona de una tacada, ya que permite dinamizar ese espacio en el búfer, además de habilitar vías simultáneas al trabajar en paralelo.
Esto supone una clara ventaja en prácticamente todos los juegos, siendo más beneficiados los que tengan pantallas rápidas y cambiantes como pueden ser juegos de coches y acción. El aumento en FPS es evidente, luego veremos algunos ejemplos.
La implementación de la tecnología Resizable BAR se debe realizar a distintos niveles. Deben ser compatibles GPU, drivers GPU, CPU, placa base y sistema operativo. Esto es debido a que una modificación de las comunicaciones entre CPU y GPU se realiza a bajo nivel, lo que afecta a numerosos componentes y se requieren de implementaciones adicionales en drivers e instrucciones por parte de la CPU.
Por parte de NVIDIA, esta tecnología se llama tal cual, Resizable BAR, mientras que AMD la ha denominado AMD Smart Access Memory, pero se basan en la misma especificación del PCIe. Básicamente existen tres configuraciones posibles para su implementación:
- GPU NVIDIA + CPU Intel
- GPU NVIDIA + CPU AMD
- GPU AMD + CPU AMD
Observamos que la configuración de AMD con Intel no es compatible. Esto es debido a que se requieren de unas instrucciones específicas por parte del procesador, en las cuales AMD ha trabajado extensamente para compatibilizarlas con sus tarjetas gráficas. Dado que NVIDIA no fabrica CPUs, ha tenido que abrir su abanico tanto a las opciones de Intel como de AMD y trabajar con ambas compañías para esta implementación.
Además de esas posibles opciones, también está la de Intel + Intel, que sucederá cuando el fabricante lance las gráficas Intel Arc Alchemist, y ya podemos augurar que sí incorporarán Resizable BAR.
Componentes Compatibleds con Resizable BAR
Con estos datos en mente, solo algunos modelos de cada fabricante son compatibles con la tecnología:
- GPU NVIDIA: Cualquiera de la serie GeForce RTX 3000
- GPU AMD: Cualquiera de la serie Radeon RX 6000
- CPU Intel: Todos los de la 11ª Gen salvo los Core i3, además de todos los de la 10ª Gen
- CPU AMD: Todos los de la serie Ryzen 5000 (Zen 3), además de los Ryzen 3000 salvo los Ryzen 5 3400G y Ryzen 3 3200G
- Chipset Intel: Cualquiera de la serie Intel 500, además de los Intel Z490, H470, B460 y H410
- Chipset AMD: Cualquiera de la serie AMD 500, además de los que tengan compatibilidad con Zen 3 en la serie AMD 400 (con BIOS AMD AGESA 1.1.0.0 o superior)
- Drivers NVIDIA: A partir de los GeForce Game Ready 465.89 WHQL
- Drivers AMD: A partir de los Radeon 20.11.2
Como vemos, con gráficas NVIDIA RTX 3000 y AMD Radeon 6000 se puede implementar Resizable BAR sin limitaciones respecto a la gama que ocupe la gráfica en cuestión.
Para activar Resizable BAR se debe entrar en la BIOS y buscar la opción, que suele estar en los apartados de configuración avanzada o menú avanzado. Puede que aparezca bajo el nombre de Re-Size BAR Support. Desde AMD indican que también es necesario activar la opción Above 4G Decoding.
No todos los juegos pueden beneficiarse de Resizable BAR de primeras. Primero debemos diferenciar entre la propuesta de NVIDIA y la de AMD, ya que ambas se aplican por separado y de manera algo diferente. La de NVIDIA, que se llama por el mismo nombre que la propia tecnología, requiere de ciertas comprobaciones y testeos por su parte, mientras que la de AMD se aplica a todos los juegos existentes.
De esta manera, NVIDIA Resizable BAR actúa sobre una lista limitada de juegos, mientras que AMD SAM funciona en todos los títulos. Cierto es que tanto AMD como NVIDIA especializan sus drivers de manera que se hagan compatibles con determinados juegos a medida que van saliendo, y que ofrezcan optimizaciones para esta nueva tecnología. Es por ello que cabe esperar que haya un aumento notable en la lista de juegos admitidos por parte de NVIDIA con el paso del tiempo.
Juegos Compatibles con NVIDIA Resizable Bar
- Assassin's Creed Valhalla
- Battlefield V
- Borderlands 3
- Control
- Cyberpunk 2077
- Death Stranding
- DIRT 5
- F1 2020
- Forza Horizon 4
- Gears 5
- Godfall
- Hitman 2
- Hitman 3
- Horizon Zero Dawn
- Metro Exodus
- Red Dead Redemption 2
- Watch Dogs Legion
Encontraréis más información acerca de este listado actualizado desde los propios drivers de NVIDIA.
Como habíamos comentado antes, los resultados con esta tecnología activada se hacen notar. La ganancia está ahí, quizá no sea un gran salto para ciertos juegos, pero es algo que te llevas de manera gratuita, si compras los componentes adecuados, claro. Los datos oficiales de NVIDIA apuntan a un 12% de mejora bajo una RTX 3080, mientras que los de AMD apuntan a un 15% de mejora, estando basados en varias configuraciones.
En la realidad, las cosas cambian bastante. Esos equipos de pruebas muchas veces no reflejan la realidad, ya que se trata de entornos controlados y calculados para que el aumento de rendimiento sea el máximo posible y así poder dar esos datos a los medios de comunicación.
Por nuestra parte no hemos podido probar NVIDIA Resizable BAR ni AMD SAM con suficientes títulos como para sacar conclusiones, así que vamos a referenciar a algunos otros medios de reconocimiento mundial como lo son Techpowerup y PCWorld.
Desde Techpowerup podemos ver que NVIDIA Resizable BAR consigue en torno a un 3-4% de mejora en los juegos que se encuentran soportados, mientras que los que no están en la lista oficial consiguen un 1-2% de mejora a lo sumo.
Por parte de PCWorld podemos ver pruebas tanto con AMD SAM, pero solo con la gráfica tope de gama, la RX 6900 XT. En este caso se observa una media del 5% de mejora con los juegos probados, resaltando algunos casos como el Borderlands 3 a 1440p que consigue un aumento del 8.4%.
Los datos reales no son comparables a los anunciados. Que ambas tecnologías son una mejora es algo evidente, los porcentajes están ahí, pero no son tanto como anunciaban. De momento queda esperar un tiempo para que se incorporen nuevos juegos por parte de NVIDIA y que se optimicen los drivers por parte de ambos.
Como hemos dicho en la sección anterior, tanto NVIDIA Resizable BAR como AMD SAM son tecnologías que mejoran los FPS en juegos sin tener que gastar dinero adicional. Tienen unos requisitos de funcionamiento poco estrictos realmente: se requieren componentes de última y penúltima generación, pero no se limitan a componentes de la más alta gama. Eso implica que las configuraciones de media gama se vean mejoradas en buena parte, ya que suelen ser las más atractivas económicamente de cara a los usuarios. Como vimos en el apartado correspondiente, todas las gráficas NVIDIA RTX de la serie 3000 son compatibles, al igual que pasa con las AMD Radeon de la serie 6000.
Es factible esperar una mejora de rendimiento algo superior y en una larga lista de juegos, cosa que sucederá con el paso del tiempo. Algo que también sucederá con los años es que los juegos pedirán más recursos y las gráficas tendrán más memoria, lo que hará que el tamaño del búfer de Resizable BAR vaya aumentando. Esto no es un problema, dado que a cada nueva versión de PCIe se va doblando el ancho de banda disponible, así que va en consonancia. Tal y como está implementada la tecnología, es posible tener este búfer de hasta 256 GB, por lo que quedan muchos años hasta que esto pueda ser un problema, ya que el búfer sin Resizable BAR es de tan solo 256 MB y no tiene una gran repercusión en el rendimiento actualmente.