Blog Personal.

AMD, Conceptos Básicos, Futuro, PlayStation 5, PS5, Radeon, Xbox Series S, Xbox Series X, XSS, XSX

Apuntalando entradas antiguas sobre la next gen.

Han ido apareciendo recientemente una serie de patentes de AMD que son interesantes a comentar por el hecho que guardan relación directa con las consolas de siguiente generación y con algunas cosas que he ido comentando con anterioridad en este blog.

La primera patente se titula GRAPHICS TEXTURE FOOTPRINT DISCOVERY y es importante de cara al uso del Virtual Texturing en los juegos,

Los accesos a un mipmap por un shader en el pipeline gráfico son monitorizados. El mipmap se almacena en una memoria i cache asociada con el shader y el mipmap representa una textura en una jerarquía de nivel de detalle.

Recordad que una textura esta compuesta por varias versiones más pequeñas llamadas mipmaps que se utilizan según la distancia a la cámara.

En la actual generación, basada en GCN, se cargan las porciones de dichas texturas más cercanas a los pixeles con los que la GPU esta trabajando actualmente así como sus mipmaps en las caches internas, lo que se le llaman PRT o texturas parcialmente residentes.

Para ello la GPU divide las texturas en bloques de 64KB donde cada 64KB es una página en un sistema de memoria virtual y cuando carga los datos en cache para que los shaders puedan operar carga esa zona de la textura con todos los mipmaps.

Se coloca una marca en el mipmap de la textura para monitorizar el acceso. La huella indica, a nivel de tile y a nivel de detalle (LOD) que tiles del mipmap esperan ser accedidos en la siguientes operaciones del shader. En algunos casos la huella es definida por una pluralidad de indicadores de huella que indican si los tiles de los mipmaps se esperan a ser accedidos en las siguientes operaciones de los shaders. En este caso, la pluralidad de los indicadores de huella asociados un primer valor indican que el tile no fue accedido durante el primer fotograma o un segundo valor indican que fueron accedidos durante el primer fotograma.

La marca no es más que un bit que colocamos en un mipmap de la textura para indicar si este ha sido accedido en un fotograma o no, dado que entre fotogramas los accesos a texturas no varían mucho esto permite descartar los mipmaps no necesarios del periodo de captación de datos desde memoria y cargar solo en las caches los mipmaps que se van a utilizar en ese momento.

Y si tenéis un Deja Vu es porque esto es lo que Microsoft en DX12 Ultimate llama Sampler Feedback Streaming y del que ya os hable en su día, el hecho de que el concepto aparezca como patente genérica de AMD lo convierte en algo que podría estar implementado también en PlayStation 5 y no un desarrollo propio de Microsoft.

La segunda patente es titulada POWER EFFICIENCY OPTIMIZATION IN THROUGHPUT-BASED WORKLOADS

Un algoritmo de gestión del consumo energético donde se propone.

  1. Una métrica de calidad de servicio para cargas de trabajo basadas en el rendimiento.
  2. heuristicas para diferencias entre las cargas de trabajo sensibles a la latencia y las sensibles al rendimiento.
  3. Un algoritmo que combina las métricas de la heuristica y de la calidad de servició para determinar la frecuencia objetivo para mejorar el rendimiento energético sin degradación en el rendimiento.

El marco de trabajo del algoritmo permite optimizar la eficiencia energética de las cargas de trabajo basadas en las cargas de trabajo del servidor y al mismo tiempo proporciona el rendimiento deseado para las que son sensibles a la latencia. El ahorro energético se logra mediante la identificación de las cargas de trabajo que pueden ejecutarse a una frecuencia más baja sin un impacto negativo en el rendimiento.

Obviamente la patente se refiere al Smartshift de la propia AMD que vimos presentado en el CES de este año.

El Smartshift en el caso de una CPU/SoC+GPU dedicada y por tanto en diferentes chips esta entre medio de ambos (el Platform Control) pero en sistemas como PlayStation 5 al ser un SoC esta dentro del mismo.

ps5powercontrol.jpg
ps5powercontrol.jpg

El concepto es el que se describe en la patente y tened en cuenta que como os he comentado varias veces no se basa en la variación del voltaje sino de la frecuencia y dicha variación toma como base la carga de trabajo que es una forma de hablar de instrucciones. Del tema del Smartshift os hable hace un mes.

Y pese a que la patente no lo explica en realidad la lógica que se encarga de monitorizar por un lado las cargas de trabajo y de monitorizar las velocidades de reloj no es más que una especie de tabla donde a cada instrucción tiene asignada una constante de consumo energético para saber el margen que tiene para ampliar la velocidad de reloj pero no en todas puede hacerlo ya que hay excepciones. En las instrucciones sensibles a la latencia es posible que la sincronización entre instrucciones se rompa. Esta ha sido una de las obsesiones de Mark Cerny por lo que el Smartshift sería indirectamente uno de los elementos de hardware que en PlayStation 5 evitaría la desincronización de las instrucciones en la compatibilidad hacía atrás que Sony propone para su futura consola, la cual se basa en mantener el rendimiento y la velocidad tal cual como en la anterior consola sin mejoras aparentes.

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