Blog Personal.

Conceptos Básicos, Feedback, Futuro, PlayStation 5, PS5, Xbox Series X, XSX

¿Expansión vía GPU extra en la Next gen?

En el servidor del blog en Discord me habéis preguntado lo siguiente:

@Urian1983 hace mucho me ronda una idea por la cabeza que esperaba se cumpla en la next gen partiendo de la base de los modelos actualizados de la actual (pro y x), puede que suene algo a locura pero después de ver que ayer no mostraron la parte trasera de la ps5 me ha vuelto la duda. Con la series x después de ver el desmontaje ya se que no es viable pero con play cabe la posibilidad. El caso es que como digo no mostraron la parte trasera lo cual teniendo en cuenta que se tendría que ver más conexiones y la ranura para meter la expansión de almacenamiento pues no habría nada que ocultar pero al no hacerlo… ocultaran algo que no quieren revelar todavía? Y esto algo podría ser otra ranura para meter una segunda gráfica custom rdna2? Sería eso posible? Por ejemplo poner la fuente de alimentación externa para dejar espacio quitando así una fuente de calor y poder añadir una segunda gráfica de unos, no se, 6tflops y 8 chips de 1giga de ram para mantener el mismo ancho de banda que en la gráfica principal. A mi me parecía una gran jugada y no tener que cambiar de consola a mitad de generación, dar la posibilidad con la misma unidad de aumentar sus prestaciones por un precio menor que una consola nueva

Poder, se podría hacer, solo necesitamos pasar de esto en el SoC de la consola:

A añadir un puerto IFOP en el SoC para conectar externamente la segunda GPU a través del mismo.

La segunda GPU tiene que tener su propia memoria GDDR6 dado que la GDDR6 tiene solo 2 canales y son ocupados en el SoC principal de la siguiente manera:

Canal#1Canal#2BW Canal#1BW Canal#2BW Total
UMCGPU56 GB/s280 GB/s336 GB/s
GPUUMC280 GB/s56 GB/s336 GB/s
GPUGPU280 GB/s280 GB/s560 GB/s
Xbox Series X
Canal#1Canal#2BW Canal#1BW Canal#2BW Total
UMCGPU56 GB/s224 GB/s280 GB/s
GPUUMC224 GB/s56 GB/s280 GB/s
GPUGPU224 GB/s224 GB/s448 GB/s
PlayStation 5 (Especulación)

Esto obliga que la segunda GPU tenga su propia memoria GDDR6 ya que con 2 canales no podemos alimentar a tres clientes al mismo tiempo y habría una contención por el acceso a la memoria. La ventaja para la segunda GPU es que su configuración sería y eso si utiliza el mismo tipo de GDDR6 y por tanto a la misma velocidad.

Canal#1Canal#2BW Canal#1BW Canal#2BW Total
GPUGPU280 GB/s280 GB/s560 GB/s
Xbox Series X
Canal#1Canal#2BW Canal#1BW Canal#2BW Total
GPUGPU224 GB/s224 GB/s448 GB/s
PlayStation 5 (Especulación)

Esto es porque en el segundo set de memoria GDDR6 no tendríamos a la CPU ocupando el otro canal y ambos estarían disponibles para dicha GPU. ¿Parece fácil la idea no? Pero hay una serie de escollos que no se tienen en cuenta.

En primer lugar hay 2 coprocesadores indispensables en toda GPU moderna que tienen acceso a la RAM aparte de la GPU y que acceden a su mismo espacio de memoria que son:

  • El Adaptador de Pantalla
  • El Codificador/Descodificador de Video

El problema es que necesitamos hacer trabajar 2 GPUs al mismo tiempo de manera sincronizada y tenemos dos opciones a la hora de repartirse el trabajo:

El segundo caso es mejor ya que nos ahorramos de complicaciones en la que tanto el Adaptador de Pantalla del SoC como el Codificador/Descodificador de Video del mismo tengan que acceder a la segunda GPU a través de complicados mecanismos, cada fotograma alterno tiene su envío a pantalla diferenciado y se necesitaría un conmutador HDMI 2.1 externo con FreeSync para mayor precisión en el que cuando un adaptador de pantalla estuviese enviando su fotograma el otro estuviese en pausa esperando pero que permitiese una total sincronización entre ambas GPUs en el sistema por lo que la segunda GPU tendría también su puerto HDMI.

Otra de las diferencias de la segunda GPU es el hecho que tendría una mayor cantidad de RAM disponible debido a que el espacio no se vería ocupado por la CPU del sistema por lo que su almacenamiento sería más grande, juegos que no utilizaran las dos GPUs y que quisieran tener una mayor cantidad de memoria disponible entonces podrían optar por la GPU adicional para ello. Pero en el tema del uso de dos GPUs hay que tener en cuenta unas palabras que dijo David Wang en su día acerca del Crossfire en AMD que se traduce en utilizar 2 GPUs en los juegos.

Esa infraestructura no existe con tarjetas gráficas fuera de CrossFire y el SLI de Nvidia. E incluso ese tipo de soporte multi-GPU está disminuyendo hasta el punto en que está prácticamente muerto. Los desarrolladores de juegos no quieren gastar los recursos necesarios para codificar sus juegos específicamente para trabajar con una matriz multi-GPU con una base de instalación minúscula, y eso sería lo mismo con un diseño MCM.

«Hasta cierto punto, estás hablando de hacer CrossFire en un solo paquete», dice Wang. «El desafío es que, a menos que lo hagamos invisible para los ISV [proveedores de software independientes], verá el mismo tipo de reticencia.

«Vamos por ese camino en el lado de la CPU, y creo que en la GPU siempre estamos buscando nuevas ideas. Pero la GPU tiene restricciones únicas con este tipo de arquitectura NUMA [acceso no uniforme a la memoria], y cómo combina características … La CPU multiproceso es un poco más fácil de escalar la carga de trabajo. El NUMA es parte del soporte del sistema operativo, por lo que es mucho más fácil manejar esta cosa de múltiples troqueles en relación con el tipo de carga gráfica de trabajo «

Entonces, ¿es posible hacer que un diseño de MCM sea invisible para un desarrollador de juegos para que pueda abordarlo como una sola GPU sin una costosa recodificación?

«Todo es posible …» dice Wang.

En RDNA2 hay dos procesadores de comandos, pero se han de invocar explicitamente ambos y la mayoría de juegos no lo hace, es más bien una optimización de cara al uso de Realidad Virtual donde cada ojo es renderizado por una «GPU» donde realmente es una sola GPU virtualizada en 2 pero fuera de los juegos para VR la mayoría de juegos solo van a utilizar una GPU dejando a la segunda GPU completamente ignorada. ¿Y como se soluciona esto? Pues apagando la primera GPU, dejando que el sistema la ignore por completo y que renderice solamente con la segunda pero si ambas son simétricas entonces pasa a ser un sinsentido porque no ganamos absolutamente nada.

Por lo que la GPU adicional tiene que ser más potente que la GPU incluida en el SoC de serie, pero al mismo tiempo tiene que ser simétrica en cuanto a configuración y tiene que ser viable dentro de las limitaciones de consumo y refrigeración del sistema, si es una GPU en el mismo nodo de fabricación creedme que esto rompería los limites de la máquina, si es una GPU en nodo más avanzado pues… ¿Pero que ganaríamos? ¿Entre un 25% y un 50%? El salto es minusculo como para justificar la inversión.

Luego esta el SSD, este como comente tiene tanto en PS5 como en Xbox Series X mecanismos tanto para comunicarse en el espacio de la GDDR6 de la CPU como el de la GPU en el SoC en ambos sistemas.

Esto es en el SoC normal, pues bien, el camino de datos del SSD a la GPU tendríamos que duplicarlo en el SoC principal si hay una segunda GPU y eso es espacio desperdiciado completamente inútil que no se aprovecharía hasta el lanzamiento de la segunda GPU en forma de add-on y como he contado antes ese espacio es clave.

¿Que conclusiones sacamos de todo esto? Pues que no veo muy viable el hecho de expandir la consola a través de una GPU adicional en vez de una Xbox Series XX o una PlayStation 5 Pro más que nada por las complicaciones que aporta en todo el proceso a todos los niveles.

Esto es todo, tenéis los comentarios de esta misma entrada para comentar y no olvideis que tenemos Discord.

5 3 votes
Article Rating
3 Comments
Oldest
Newest Most Voted
Inline Feedbacks
View all comments
Ger

Gracias por aclarar esa duda 🤗

MASS

Ademas que en los ultimos años (de cara a sus juegos) los propios Desarrolladores en PC han ido dejando de lado a las Soluciones MultiGPU SLI/Crossfire….una sola GPU, mas sencillo y mas eficiente…..claro que los fabricantes de GPUs han optado por inflar mucho mas el precio de las graficas mas gordas, peor aun con las RTX de Nvidia….te compras una Nvidia GTX 1650 Super o una AMD RX 580 por unos 170-200 euros y si quieres doblar el rendimiento la RTX 2070 Super se te va a 550-600 euros, cuando uno esperaria que costara 350-400 euros, bueno ahi va como… Read more »

Last edited 3 months ago by MASS
Jolin

Bueno, no habría que agregar una segunda GPU, sino cambiar la existente por otra mejor. Así cómo en anteriores consolas uno podía cambiar el disco duro…