enero 20, 2021

«Insiders» y medias verdades sobre PS5

Comentario Original:

Lo que comentas fue una noticia de Forbes sobre Navi comentando que Sony estaba ayudando con el desarrollo. Yo no entiendo la logica del articulo cuando AMD tiene mas idea de GPUs que SONY y es esta ultima la que necesita de AMD para hacer su consola y no al reves.

Otra cosa es a nivel de los dineros que AMD recibe por adelantado de las consolas a nivel de R&D

Como consejo personal… los canales Moore’s law is dead, redgamingtech, adoretv, coreteks,etc la mayoria de su contenido es especulacion por su parte y lo de las fuentes que dicken tener yo no me creo la mitad. Pero bueno que cada uno cream lo que quiera.

Ya que lo has comentado, creo que es importante poner los puntos sobre las ies, ya que el video sobre PS5 que han hecho en Red Gaming Tech es cuanto menos digno de …

Facepalm

En un vídeo, Paul de Red Gaming Tech ha dejado ir algo de «información adicional», acerca del hardware de PlayStation 5.

El video lo vi justo cuando salió y hay algo que me llamo poderosamente la atención:

Es por ello que he decidido liberar la siguiente entrada:

¿El motivo de ello? Leedla y entenderéis el contexto, pero especialmente creo que es importante aclarar una serie de informaciones que dejan ir desde Red Gaming Tech, no desde la perspectiva de tacharles de crear Fake News adrede, sino porque creo que malinterpretan parte de la información existente, la cual luego explicaré en que consiste, cuando lleguemos a la parte del «Geometry Engine».

En primer lugar afirman que la función RDNA 2 que le falta a PS5 es el Sampler Feedback Streaming, pero decir que esa es una función que le falta a la GPU no es dar la explicación completa.

La pieza de hardware del SFS no se encuentra en la unidad GFX que es la GPU propiamente dicha, sino que es un acelerador de la GPU, el cual se encuentra conectado al Northbridge de la GPU junto a otras unidades como el controlador de pantalla, el codec de video, las unidades DMA.

Hay que recordar que en las arquitecturas Zen ya no existe un Northbridge para la CPU y otro para la GPU sino que se encuentra unificado, pues bien la unidad del SFS es uno de esos aceleradores y es que la política de AMD en cuanto a los diseños semi-custom es que los bloques que aportan ellos no pueden ser modificados internamente por el cliente, se entregan e implementan tal cual, con el cliente pudiendo escoger la cantidad de elementos que necesita y cuales.

El SFS es una pieza de hardware que no se encuentra en las RX 6000, es un acelerador exclusivo de Xbox Series X, de la misma manera que la consola también tiene unidades de aceleración para descomprimir al vuelo en memoria los datos desde el SSD, las cuales son diferentes en cada consola y también en el PC. En Xbox es una implementación del DirectStorage pero no son las mismas piezas de hardware.

El segundo punto del que Paul habla es que la CPU no son dos bloques de 4 núcleos con su Cache L3 cada uno, sino que se trata de un bloque de 8 núcleos con la cache L3 unificada entre todos ellos como en Zen 3, pero rapidamente Paul afirma que eso no es ninguna mejora en el IPC, el problema con el que nos encontramos es que si un núcleo de un CCD depende de un dato de otro CCD hay una ventaja en el rendimiento al unificarlos, AMD ha sido clara en ello con Zen 3.

Por supuesto que Zen 3 tiene mejoras a nivel interno que lo convierten en un núcleo distinto a Zen 2, pero lo de unificar los dos CCDs en uno solo debería dar un empuje al rendimiento. Por otro lado, esto demuestra que el SoC de PlayStation 5 es posterior al de Xbox Series X y es que no ha sido hasta hace recientemente que AMD ha empezado a ofrecer interfaces Infinity Fabric de 64 bytes/ciclo en sus diseños, que es lo que permite unificar dos CCDs en uno solo.

Lo otro de lo que habla Paul en el video es lo que Sony llama de manera confusa «Geometry Engine» y es confusa porque históricamente el Geometry Engine es el hardware que se encarga de calcular la geometría de la escena antes de la rasterización:

Es decir, el nombre esta muy escogido, pero hemos de entender una vieja obsesión que tiene Mark Cerny con el concepto de pre-culling. ¿En que consiste? Básicamente viene de la época de PS3, consola con unas capacidades en lo que a geometría se refiere bastante limitadas. ¿La solución? Era renderizar previamente la escena con el CBEA, la CPU de PS3, pero con las siguientes condiciones:

  • No aplicar ningún tipo de shader
  • No texturizar
  • Después del rasterizado dejar ir todos los datos.

¿El objetivo de hacer esto? Sacar una lista de toda la geometría que se pueda eliminar, pero claro, eso en PS3 se podía hacer por el hecho que los SPE del CBEA eran mucho más rápidos que los Vertex Shaders del RSX. Esto es algo que no ocurre en PS4, pero Cerny se obsesiono tanto con ello que incluso tiene una patente al respecto.

Obviamente en PS4 ya no existían los SPE y lo más parecido a ello es el uso de Compute Shaders en la propia GPU, pero claro, estos no son más rápidos que la propia GPU por el hecho que estamos utilizando la propia GPU para realizar el pre-culling.

¿Entonces? Bueno, AMD lo que propuso hace unos años y al final se ha aceptado es re-implementar lo que conocemos como World Space Pipeline, las etapas que vienen antes del rasterizado y por tanto de las que se encarga tradicionalmente el Geometry Engine.

Es decir, pasar de esto:

A esto:

Aunque los nombres son distintos, el Surface Shader equivale al Amplification Shader de DirectX 12 Ultimate y los Primitive Shaders equivalen a los Mesh Shaders.

El caso es que no hay una estandarización de la nomenclatura, en todo caso AMD con RDNA 2 no ha hecho cambios en el Front-End del pipeline gráfico, el World Space Pipeline, y ha dejado de hablar de Primitive Shaders a hablar de Mesh Shaders con RDNA 2, en realidad están hablando de lo mismo.

Pero mejor que vayamos a las palabras de Cerny en su presentación, ya que son clave:

Con respecto a las nuevas carácteristivas, como he dicho nuestra estrategia era abrir nuevos caminos y al mismo tiempo no requerir el uso de las nuevas capacidades de la GPU.

Por más de una decada, las GPUs han impuesto una restricción en los motores de los juegos.

El software se encarga del procesamiento de los vertices (se refiere a los shaders) pero en la mayor parte tenemos hardware responsable de los triangulos y otras formas geométricas que forman los vertices.

Esto significa que no es posible hacer optimizaciones como abortar el procesamiento de un vértice que se renderiza fuera de la pantalla.

PlayStation 5 tiene una nueva unidad llamada el Geometry Engine, el cual permite manejar los triángulos y otras primitivas con un control totalmente programatico.

Como desarrollador de juegos, eres libre de ignorar su existencia y utilizar la GPU de PlayStation 5 como si no fuese más capaz que la GPU de PS4 o puedes utilizar esta nueva inteligencia de varias maneras.

Un simple uso serían las optimizaciónes como la eliminación de los vertices fuera de pantalla u opacados por otros.

Un uso más complejo implica algo llamado Primitive Shaders, los cuales permiten a los juegos sintetizar la geometría al vuelo, mientras es renderizada. Es una nueva capacidad.

Utilizando los Primitive Shaders en Playstation 5 permitirá muchas técnicas como varias el nivel de detalle de manera suave, así como el añadido de detalle procedural en los objetos y mejoras en los sistemas de partículas y otros efectos visuales.

Es decir, Cerny vendió lo que es el nuevo World Space Pipeline como una unidad especializada y muchos se han tragado la existencia de dicha unidad.

¿Entonces? Lo que si que existe desde RDNA es lo que AMD llama el Geometry Processor:

La cosa es muy simple, en vez de enviar los vertices de un shader a otro de manera directa, se pueden enviar al Geometry Processor para que elimine la geometría superflua de la escena. Es el mismo proceso que se hacía con los SPE de PS3, pero esta vez no necesitas un programa shader para la eliminación de lo superfluo sino que te basta con dicha unidad, pero antes el shader ha de marcar que geometría quiere eliminar.

Pero como ya comente en su día, no es una pieza exclusiva de PlayStation 5.

Y ahora vamos a la parte más interesante, Sony tiene una patente para utilizar teselación adaptativa para el Foveated Rendering. ¿Cuál es el problema? Pues tal y como comente en la entrada recién desprotegida, AMD llamo Variable Rate Shading al Foveated Rendering hace unos cuantos años.

Lo cual no es lo mismo que el VRS que NVIDIA empezó a a implementar en las RTX 2000, Turing, y que se ha estandarizado en DirectX, sin ir más lejos la propia AMD ha cambiado su definición de VRS a la que ellos utilizaron hace unos años.

Paul confunde la patente de la teselación adaptativa para el Foveated Rendering con el VRS, en realidad es malentender el VRS y la patente de Sony, ya que el VRS no va sobre reducir el ratio de pixeles en pantalla sino el ratio de programas shader por pixel, en cambio el Foveated Rendering si que va sobre reducir los pixeles en pantalla y esta pensado para utilizarse en la VR, especialmente con el Eye Tracking, con tal de ajustar el detalle según el campo de visión del ojo.

Paul en el vídeo dice que SONY tiene su propia solución de VRS, pero realmente no la puede tener desde el momento en que el VRS es aplicado por una parte del hardware que AMD no deja tocar a sus clientes.

Lo que quiero que entendáis es el motivo por el cual hice esa entrada de hace unos días y es que en ciertos mentideros se estaba diciendo que PS5 tiene su propio sabor de VRS, el problema es que lo que ellos llaman VRS realmente no lo es.

¿Entonces? El VRS no se esta aplicando en PS5 por el hecho que por el momento los desarrolladores siguen con herramientas de PS4, es por ello que Cerny hablaba de que para la primera generación de juegos a ellos no les importa que se utilicen las herramientas de PS4 para desarrollar. Nos encontramos en la situación que la API de Microsoft es más completa pero más lenta y la de SONY es más rápida pero incompleta.

Esto es todo, tenéis los comentarios para decir vuestra opinión de esta entrada, cualquier post fuera del tema de la misma o que sea irrespetuoso será borrado sin contemplaciones, por otro lado recordad que el blog también tiene un servidor de Discord donde podéis entrar.

5 7 votes
Article Rating
9 Comments
Oldest
Newest Most Voted
Inline Feedbacks
View all comments
Isaac

Lo que está claro es que los ingenieros tienen muchas ganas de trollear con los nombres (será por las patentes)

German

Pero lo del Geometry Engine lo han vendido como que Cerny ha inventado algo que en casa Nividia no lo han olido en años. Un poco ridiculo todo el asunto. Mira que creo que Cerny es un genio creando y organizando todo lo del ICE Team. Pero pronto olvidamos todas las promesas de PS4 o PS4 Pro como por ejemplo lo de Vega de AMD. Os acordais de Rapid Packet Math? Incluso me gustaria verlo en Microsoft para que organice y gestione entre otras cosas 343 que Spencer no anda por la labor. O como dice Urian que los de… Read more »

Last edited 1 month ago by German
Daniel

Felicidades por el artículo Urian.

Tiene todo el sentido lo que comentas. Pues Sony lo ha hecho genial con PS5, al final esperar a AMD por parte de Microsoft ha sido una gran estupidez que no les ha permitido tener más stock de cara al lanzamiento y encima tener unos peores devkits.

Un saludo.

German

Me uno a las felicitaciones. Bien explicado y sin entrar en fanatismos de consolas.

German

Vamos que esto es una carrera de fondo y cada uno hace las cosas a su manera. Soy de los que piensa que no vamos a ver versiones pro de las consolas pero de haberlas cuando el software de Microsoft ande maduro te saca Sony nuevas specs y tech con el software ya maduro de AMD y win win de Sony. El juego de Microsoft tiene un poco de ruleta rusa… si sale bien pues perfecto pese a los primeros años de ridi pero como salga mal… puede ser buena la leche. De todas formas las risas si al final… Read more »

Last edited 1 month ago by German
nolgan

como es eso de que el clipt de ps5 son los 8 nucleos de cpu integrados en un solo clit como los zen3, y no en 2 clip como es zen 2.. ui que se puede venir.. tengo ganitas de que saquen foto a la apu de ps5 para ver si eso es verdad… porque como dices y explcio amd, zen 3 una de las mayores ventajas es tener el clipt de 8 nucleos que es de las cosa que mas hace ganar ipc muy interesante todo lo que dices a tb eso de que las apis de ps5 son… Read more »

German

Creo que no has entendido nada de lo que ha dicho Urian o soy yo el que no se entera de nada. Imagino que te importa mucho mas la guerrita de consolas. Ya solo nos faltan los del PC de 1000 euros que se creen juakers. Cito textualmente. Nos encontramos en la situación que la API de Microsoft es más completa pero más lenta y la de SONY es más rápida pero incompleta. Yo lo que entiendo es que a dia de hoy la nueva API de Microsoft no la tienen muy madura… que lo mismo no termina de madurar… Read more »

Last edited 1 month ago by German
German

Desde la mas absoluta ignorancia a modo especulativo… lo del AMD Smart Acess Memory tiene algo de sentido en una APU y sobre todo en una consola? A lo que voy es si se podia rascar algo de mejora en consolas. Yo no lo creo pero pregunto… por si alguien tiene mas idea.

Julio

Tengo una duda: si el incremento de velocidad es por la infinity caché ¿ps5 puede sostener esa velocidad todo el rato o solo hasta el nivel de la infinity caché y bajaría la velocidad cuando tirase de la gddr6?