En Resetera, quien fuera el jefe de marketing de Xbox hasta la primavera del año pasado, Albert Penello, ha dejado caer información muy jugosa en el post de especulación sobre la siguiente generación en ese mismo foro que he decidido interesante comentar.

#1:

No voy a comentar sobre las especificaciones por supuesto. Pero hay un par de cosas ahí que me dan la sensación que Brad ha tomado una posición ferrea que van en contra de mi experiencia personal.

Con Brad se refiere a Brad Sams de Thurrot.com quien ha ido filtrando detalles a través de Thurrot.com.

Primero, Sony y Microsoft saben exactamente los precios y especificaciones con las que intentan lanzar la máquina, y lo saben antes de firmar cualquier contrato con AMD. Se realiza una enorme diligencia en un proceso como este a nivel interno, y descubrir el precio y las especificaciones de lo que podrías construir es fundamental para el proceso entero. Es literalmente el paso 1.

Esto tiene sentido por un motivo, en consolas son los fabricantes los que mandan a fabricar los chips y tienen los contratos (actualmente con TSMC) por lo que han de conocer detalles como:

  • Coste de las obleas según el volumen.
  • Rendimiento por oblea según el tamaño de cada chip
  • Densidad en transistores.

Existe una metodología estándar para conocer el coste preliminar de los chips según el tamaño de los mismos.

En ingles dado es «die» y se refiere al coste del chip el cual se puede calcular de la siguiente manera:

La productividad del dado son los llamados yields, cuanto más grande sea el chip más pequeña será la productividad.

En cuanto al coste de la oblea no es fijo y es lo que controla la fundición y el coste va a depender del cliente, es la parte que suele estar más secreta de todas y el valor con el que las fundiciones buscan potenciales clientes.

¿Que nos queda? Ah si, la cantidad de dados/die por oblea. El número de dados por oblea es básicamente el área de la oblea dividida por el área del dado.

El problema es que al ser la oblea circular y los chips cuadrados habra partes de la oblea con chips incompletos cuyo coste de fabricación en la oblea recaerá sobre aquellos que si funcionen. Por otro lado pueden haber chips que sean aparentemente funcionales pero que tengan defectos que les impidan alcanzar la especificación máxima. En PC estos se utilizan para crear gamas más bajas para sacarles rendimiento, en consolas esos chips no se pueden utilizar y encarecen el SoC principal.

Sigamos con las palabras de Penello.

El motivo es que ellos han modelado la arquitectura al completo y están construyendo los componentes del sistema en paralelo, no en serie. Por lo que tienen que saber donde va a ir cada cosa para que elementos como la placa madre, los sistemas de enfriamiento, el diseño de la carcasa, la velocidad de los ventiladores, las antenas de radio y un sinfín de otros componentes van a caer con tal de llegar a los objetivos de precio y rendimiento. Los margenes en consolas son super.-pequeños por lo que no hay mucho espacio para hacer grandes cambio en el programa.

Esto es muy importante… Básicamente porque es una referencia al potencial añadido de hardware especializado para el Real Time RayTracing (RTRT), en paralelo a esto hace unos días la gente de 4A Games (saga Metro) hablando del soporte RTRT en Metro Exodus y la posibilidad de la implementación de esta tecnología para la next gen…

«En términos de la viabilidad del trazado de rayos en las consolas de próxima generación, el hardware no tiene que utilizar específicamente núcleos RT (RT Cores). Esos núcleos no son lo único que importa cuando se trata del ray tracing. Son un hardware de función fija que acelera los cálculos específicamente relacionados con las pruebas de intersección de la BVH.

Estos cálculos se pueden realizar en un compute shader estándar si los núcleos son numerosos y lo suficientemente rápidos (creemos que así será en la siguiente generación).

De hecho, cualquier GPU que se esté ejecutando DX12 podrá «ejecutar» DXR ya que DXR es solo una extensión de DX12 «

Exacto, Microsoft lleva tiempo diciendo que cualquier hardware DX12 puede ejecutar DXR, en realidad los RT Cores solo aceleran una parte del pipeline que es la intersección de los rayos con los objetos.

La intersección de los rayos con la escena se puede realizar a través de los propios shaders de la GPU tradicionales (Utilizando Compute Shaders) o con una unidad de función fija. Microsoft no especifico jamás en el DXR que los RT Cores tuviesen que estar pero el tema es que son mucho más eficientes.

El coste del BVH es sumamente alto y es por ello que con los RT Cores incluso un chip Turing que es menos potente que uno Volta consigue tiempos más cortos bajo la misma demo. ¿Que tiene que ver con lo que dice Penello? Pues que los RT Cores ocupan espacio en el chip principal y colocarlos significa recortar especificaciones en otras áreas con tal de poder cuadrar el presupuesto en el tamaño del chip y transistores, aparte que los cambios que se pueden hacer son menores cuando el diseño del chip ya ha sido decidido por completo y el añadido de RT Cores a última hora seria algo que Microsoft podría no haber incluido por temas de timing y coste.

En todo caso Penello marcho en Abril de 2018, pero por sus palabras intuimos que «Scarlett» por esa fecha carecia de RT Cores en su GPU.

Ahora, hay cosas que pueden cambiar. Pero esas cosas están en lo márgenes. En el caso de Xbox One por ejemplo, la carcasa y el sistema de refrigeración se sobre-diseño (¡obvio dado el tamaño!) lo que le permitió el equipo entero aumentar las velocidades de reloj después de que las piezas iniciales fueran puestas a prueba. Esto no era parte del plan y lo normal es que se diseñe para llegar a la velocidad de reloj esperada y que no hubiese suficiente margen para subir la velocidad.

El otro punto que las fundiciones les dicen a los fabricantes es el consumo energético que hay en cada nodo según la velocidad de reloj de cada tipo de puerta lógica o tipo de memoria. La velocidad de reloj esta muy asociada a la cantidad de chips que pueden salir bien también y al test de productividad. Es decir, puede salir de la oblea un chip que sea perfectamente funcional pero no llegar a las velocidades de reloj adecuadas y provocar que el rendimiento por oblea sea menor a esas altas velocidades.

En PC tenéis una colección entera de velocidades porque lo que hacen es ir testeando los chips de la velocidad más alta a la más baja dentro de la gama de un mismo chip. En consolas solo hay una velocidad estandar de cada componente y si una velocidad no da los suficientes chips para vender consolas al mercado eso es poco parque de consolas y encima el sistema ale sumamente caro. Si la velocidad es demasiado baja entonces la consola no es competitiva.

Por lo que los diseñadores de sistemas saben cosas como:

  • Area del chip
  • Densidad de transistores (cuantos transistores pueden utilizar)
  • Velocidad de reloj de los componentes.

Y creedme, pueden llegar a hacer no una ni dos versiones de un mismo chip via simulador sino varias construyendo y puliendo los diferentes componentes en un proceso que dura un tiempo hasta tener más o menos la configuración final.

Así que es importante conocer las especificaciones y el precio muy tempranamente en el proceso. Si, las cosas pueden cambiar y evolucionar, pero normalmente son pequeños ajustes debido a que las implicaciones de hacer un cambio importante en la parte final del proceso es muy arriesgado. Este es el por qué la idea de que en Xbox One X se hizo cualquier cambio o reacción basados en la existencia de la PS4 Pro muestra un malentendido de como funcionan las lineas de tiempo en cuanto a HW.

Más bien el malentendido muestra lo Sonycéntricos que son los medios especializados.

#2:

Hum. esto es difícil de decir. La Ley de Moore se esta enlenteciendo…

Esto lo comento Lisa Su, la CEO de AMD, en su conferencia del CES, pero esto es algo que se da por hecho.

Pero la Ley de Moore habla de densidad y no del coste. En este punto con el mercado en los 16nm y de camino a los 7nm, mientras que tu tienes una duplicación de la densidad esto no es tan efectivo en cuanto a costes y lo rumores es que los nodos de 5nm y más bajo serán mucho más caros de producir incluso que los 7nm o incluso los 16nm. Así que va a haber un enlentecimiento acerca de cuanto puedes meter en un espacio de 350mm^2 para una consola, no solamente desde la perspectiva de la potencia bruta pero también en cuanto a coste.

Traducción: Las obleas a 7nm cuestán más dinero que las de 16nm.

¿La realidad? Un concepto que persigue a los diseñadores de chips llamado actualmente llamado «Dark Silicon» o Silicio Oscuro. ¿Que problemas plantea? Veamos con este pequeño inciso…

El término Dark Silicon hace referencia a las partes del procesador que tienen que ser apagadas en un momento dado para que otras puedan funcionar. Hace muchos años este problema no existía ya que el número de transistores que tenía un procesador era bastante menor que hoy en día y la cantidad de transistores por unidad de superficie tampoco era comparable. Esto permitía tener un procesador funcionando al 100% y poder alimentarlo y refrigerarlo sin problemas.

Al igual que con la famosa Ley de Moore, en este caso durante un tiempo se pudo seguir lo que se conoce como Dennard scaling (relacionado en cierta medida con la ley de Moore) que dice que a medida que los transistores se hacían más pequeños, la densidad de consumo por unidad de superficie se mantenía constante. Esto se puede traducir de una forma más coloquial como que a medida que un transistor se hace más pequeño, su consumo se reduce proporcionalmente a la mejora en tamaño. Durante bastantes años tanto la Ley de Moore como Dennard scaling se han venido cumpliendo. Lejos quedan ya los procesadores a los que había que meterles 3,3 o 5 voltios para que funcionasen. Hoy en día si hablamos de cifras como 1,4 voltios al hacer cosas como overclock casi nos llevamos las manos a la cabeza de lo alta que nos parece esa cifra.

Pero al igual que la Ley de Moore, nos estamos encontrando con problemas para escalar el consumo por transistor para mantener esa densidad de consumo por unidad de superficie a medida que metemos más transistores. Ya no se puede bajar ese consumo tanto como nos gustaría con las técnicas de fabricación de procesadores que utilizamos en la actualidad. Incluso hay ocasiones en las que las fugas de un proceso de fabricación determinado acaban por provocar productos nefastos (Snapdragon 810, por ejemplo).

Al no poder mantener una densidad de consumo determinada y encontrándonos con que hay ocasiones en las que esa densidad de consumo sube, tenemos que buscar otras técnicas que permitan rodear esa limitación. Es aquí donde entra el Dark Silicon. Si tú eres capaz de apagar algunos transistores en una unidad de superficie determinada, vas a permitir que otros transistores tengan un mayor margen de consumo y temperatura para trabajar pudiendo así mantener una densidad de consumo concreta para todos esos transistores, los encencidos y los apagados.

Con esto solucionas el problema de la densidad de consumo pero se presenta otro bastante obvio. ¿De qué sirve meter cientos de millones de transistores en un procesador si luego vas a tener que usar solo unos pocos a la vez en un momento dado? ¿Tiene sentido meter cada vez más transistores en el mismo espacio sin poder mejorar lo suficiente el consumo empeorando por tanto el problema del Dark Silicon?

En un inicio, se comenzó dividiendo las tareas del procesador en diferentes áreas para hacer más eficiente su procesamiento. De ahí surgieron cosas como la unidad de coma flotante, por ejemplo. Más tarde, se vio de casualidad que técnicas como esta en la que se dividían las tareas del procesador y se repartían por módulos más especializados también ayudaban a aliviar el problema del Dark Silicon. Con esto puedes tener un área del procesador más pequeña haciendo de forma más eficiente una tarea. Esto te posibilita apagar antes ese grupo de transistores para acto seguido poder enecender otros. También permite el hecho de que usando menos transistores de forma más eficiente en una tarea permite seguir teniendo otros transistores trabajando en otra parte del procesador. Esto siguió avanzando hasta conceptos como los que tenemos hoy en día de SoC o Sistema en un Chip con big.LITTLE y sucesivos. Un chip con múltiples módulos, cada uno especializado en una tarea concreta y que se pueden apagar y encender según convenga.

Incluso en los diseños multinúcleo actuales podemos apagar unos núcleos y encender otros. De hecho suele ser recomendable encender unos núcleos mientras tienes otros apagados, no vayas a acabar sufriendo throttling, problemas de temperatura o un consumo disparado.


De cara al futuro es probable que sigamos con la tendencia de añadir módulos con tareas específicas. Con suerte igual vemos también nuevas técnicas de fabricación como la litografía en ultravioleta extrema que permitan mejorar un poco la densidad de consumo por unidad de superficie reduciendo ligeramente el problema del Dark Silicon. Hay muchos que piensan que en el futuro el diseño de procesadores no va a estar tan limitado por la Ley de Moore si no por los problemas al intentar cumplir con el Dennard Scaling. Por el momento, parece que vamos a seguir por el camino de añadir módulos más especializados como de inteligencia artificial, que tan de moda está ahora, y extendiendo conceptos como el big.LITTLE y el power gating para apagar zonas del procesador según convenga.

De cara al futuro es probable que sigamos con la tendencia de añadir módulos con tareas específicas. Con suerte igual vemos también nuevas técnicas de fabricación como la litografía en ultravioleta extrema que permitan mejorar un poco la densidad de consumo por unidad de superficie reduciendo ligeramente el problema del Dark Silicon. Hay muchos que piensan que en el futuro el diseño de procesadores no va a estar tan limitado por la Ley de Moore si no por los problemas al intentar cumplir con el Dennard Scaling. Por el momento, parece que vamos a seguir por el camino de añadir módulos más especializados como de inteligencia artificial, que tan de moda está ahora, y extendiendo conceptos como el big.LITTLE y el power gating para apagar zonas del procesador según convenga.

Es decir, hay una parte importante del área de los nuevos chips que van a ir al Silicio Oscuro por lo que realmente no pueden plantear que vayan a tener disponible el doble de transistores para los diferentes componentes.

En todo caso sigamos con las palabras de Penello.

Y como he mencionado antes, hay un montón de fuerzas que solían beneficiar a las consolas (como los Discos Duros y los discos ópticos) donde los que iban a las máquinas de juegos eran solo una pequeña fracción de la producción, pero las consolas de hoy en día son el mayor (y posiblemente pronto el único) cliente. Es totalmente concebible que durante la siguiente generación de consolas los reproductores BluRay y DVD desaparezcan.

Traducción: Es posible que Microsoft se cargue la unidad óptica para la siguiente generación.

Realmente, si tu miras hacía atrás, puedes ver esto tu mismo. Hay muchos que sugirieron que los primeros juego de XBO y PS4 no se veían mucho mejor que los juegos tardíos de la generación de 360 o Ps4. Y además oyes esto acerca de las versiones para Pro/X y PS4/S de los juegos. Dependiendo de la televisión, el entorno de visión y francamente el espectador mismo. Puede ser alguna veces difícil darse cuenta de las diferencias cuando no las estas comparando codo a codo.

La otra cara de esto es que pienso que hay algunas buenas técnicas de renderizado que son más «baratas» desde una perspectiva de computación en el nuevo HW y los desarrolladores están tomando ventaja de las diferentes técnicas de reconstrucción. Así que es posible que los desarrolladores decidan sacrificar la resolución nativa a cambio de realmente buenas técnicas de re-construcción+mejoras en la velocidad innatas+mejoras en técnicas de HW que le den a los juegos un buen salto visual.

Esto es algo que llevo tiempo diciendo, que entre operaciones por pixel y resolución lo que era importante para el salto generacional son las operaciones por pixel. Pero la mención de técnicas de reconstrucción de imagen hacen referencia a elementos que no se encuentran en las consolas de la actual generación como es el uso de redes neuronales profundas (Deep Neural Network) o DNN para cosas como el re-escalado de imagen, algo que os he estado comentando durante mucho tiempo en este blog.

Básicamente da mejor calidad de imagen una imagen con 100.000 operaciones por pixel y la 1/2 de resolución que una con toda la resolución y 50.000 operaciones por pixel. Pero dado que Penello ha tenido relación con Microsoft por lo que veamos por cual de los posibles caminos puede optar Microsoft…

Pues teniendo en cuenta el DirectML… Esta muy claro que tiraran por una GPU con capacidad DNN, ya sea con unidades especializadas tipo Tensor Cores o a través de las unidades shader mismas.

En esencia la idea de los Tensor Cores es aprovechar la definición de unidad de procesamiento tensorial…

Una unidad de procesamiento tensorial o TPU (del inglés tensor processing unit) es un circuito integrado desarrollado por Google específicamente para el aprendizaje automático.
En comparación con las unidades de procesamiento gráfico (que a partir de 2016 se usan con frecuencia para las mismas tareas), estas unidades están diseñadas implícitamente para un mayor volumen de cálculo de precisión reducida (por ejemplo, desde 8 bits de precisión) y carecen de hardware para la rasterización/cartografía de textura

Podemos concluir que el pipeline de computación sería el equivalente a dichas unidades porque dicho pipeline no utiliza ninguna de las unidades de función fija típicas de las GPUs. Ahora bien, la contrapartida es que suelen funcionan a precisiones mucho más bajas que las GPUs… ¿Solución? Hacer que las ALUs de las GPUs puedan operar como unidades SIMD sub-divisibles, esto significa que una ALU FP32 y su registro se puede subdividir en varias ALUs de menor precisión. Es decir generar 2 FP16 o en su defecto genera 4 operandos de 8 bits (Int8).

En realidad no hacen falta los Tensor Cores para el Deep Learning pero como unidad especializada es mucho más útil para ciertos cálculos y como ocurre con los RT Cores aceleran ciertas tareas en mayor grado. ¿Cual es la diferencia con el RTRT? Pues que el uso de la IA tiene un nivel de madurez mayor y hemos de tener en cuenta que lo Tensor Cores ya estaban en Volta por lo que para AMD sería más fácil alcanzarlo, el problema es que no sabemos si AMD los incluirá en la next gen porque de eso no tenemos información y existe el tema del espacio limitado que os he comentado antes.

#3:

No me gusta la palabra «cerradas» debido a que realmente no están «cerradas» hasta que no se llega a la producción en masa. Esto habitualmente (y esto es algo sobre lo que tengo que pensar) hasta posiblemente unos 6 meses antes del lanzamiento. La unidades que están cercanas a la calidad de produccion final para el testeo y la validación se llegan a fabricar como mucho unos 9 meses antes de la fecha de salida. En este punto pequeños ajustes pueden ocurrir por lo que pueden haber pequeñas diferencias. Así que me tomo la palabra «cerradas» muy seriamente.

Pero tu puedes hacer cambios muy pequeños hasta un año antes del lanzamiento. Las variables para una consola completa de siguiente generación son muy diferentes con las que estábamos enfrentándonos con Scorpio, sobre la cual estábamos muy seguros muy tempranamente (y nos permitió anunciarla tan tempranamente) por lo que no es la misma situación.

Esta es la matiz de mi primer post. Las especificaciones de esas máquinas se toman como objetivo muy tempranamente, y cualquier cambio que se hace más tarde en el juego es muy pequeño.

Un cambio pequeño a última hora sería por ejemplo cuando Sony paso de los 4GB a los 8GB GDDR5 en PS4, no afectaba al SoC principal porque la idea no era aumentar el ancho de banda del chip sino utilizar el modo Clamshell de dicha memoria para colocar dos chips por controlador de memoria.

Cambios como este podríamos ver en la etapa final de las consolas de la siguiente generación porque afectan poco o nada al SoC o al chipset principal.

En todo caso el tema del timing es interesante porque esto marca que tiene que existir una versión terminada de la consola al 100% un año antes del lanzamiento. ¿Recordáis como los rumores acerca de Orbis y Durango aparecieron en 2012? Yo sinceramente descartaría por completo una salida en 2019 por lo que dice Penello, más que nada porque cuanto tu repartes los SDK corres el riesgo que se filtre la información dado que no puedes controlar a todo el mundo con un SDK.

Con respecto a los «planes de contingencia» o las múltiples vías de desarrollo: No. Al menos no de la forma que supongo que quiere decir (que consiste en opciones de ruta paralela activa). Eso simplemente no es económicamente viable porque, en esencia, está desarrollando múltiples consolas diferentes y está incurriendo en todos los costos y riesgos asociados con ambas. El chip en sí es solo una parte del programa, y ​​el sistema completo generalmente se basa en el chip. Así que hacer más de uno realmente no es posible. Tiene múltiples opciones para lograr sus objetivos, que se discuten con los proveedores (por ejemplo, AMD), pero suponiendo que estoy interpretando la pregunta correctamente, traza un curso y listo. Como he dicho, se pueden hacer ajustes durante el desarrollo, pero no consideraría esos «planes de contingencia» en la forma en que creo que lo dicen. Hay mucho riesgo involucrado Da miedo, pero recuerde que AMD es un socio a largo plazo tanto para Sony como para Microsoft, por lo que en el momento en que se realiza el trabajo y se establecen los contratos, existe un alto grado de confianza de todos los involucrados en que el plan puede suceder.

Es decir, el planteamiento de dos consolas paralelas con especificaciones dispares es económicamente inviable por el hecho que es el desarrollo de dos productos distintos con sus lineas de desarrollo y producción propias por lo que el concepto de que Lockhart y Anaconda sean tan dispares como ha aparecido en la rumorologia y que conste que la entrada del otro día no es porque yo considere que las specs de Lockhart sean esas sino para comentar un posible escenario.

El zasca viene ahora:

Finalmente, no pretendo sugerir que Brad está mintiendo o que se está alimentando con mala información (a propósito). Creo que las personas con fugas pueden ser fuentes creíbles y simplemente no conocen todo el plan. Es probable que obtenga pequeños fragmentos de información para luego extrapolarlos a una especificación, o las personas que le dan la información solo tienen una parte de la historia y están haciendo lo mismo. Lo único a lo que estaba reaccionando fue la impresión de que estas especificaciones de la consola son fluidas, no se han decidido, por lo que todo sigue en el aire. Es probable que ese no sea el caso. Alguien sabe exactamente cuál es el plan.

Brad Sams de Thurrot.com no esta dando veracidad a informaciones como las especificaciones que se postearon en reddit y que Jeuxvideo tomo como ciertas y diría que Brad Sams y el resto de medios cercanos a Microsoft están sacando información de un documento de planificación para la next gen muy parecido al documento «Yukon» que hubo antes de lo rumores de Durango donde se relataba el mapa de ruta y las ideas para lo que sería la next gen, obviamente muchas no se cumplieron, pero era principalmente un documento de marketing.

Curiosamente Microsoft suele llevar a cabo el plan 3-30-300 desde el diseño de la Xbox 360/Xenon.

El párrafo es del libro de Robbie Bach de sus experiencias como mandamás de la división Xbox. Por el tipo de información que dan diría que Brad Sams y el resto tienen el documento de 3 páginas inicial dado que no dan detalles específicos de los componentes o al menos una versión reducida de los mismos.

Teniendo en cuenta toda esta información, lo que esta muy claro es que muy posiblemente Lockhart y Anaconda no difieran mucho en cuanto a hardware y que realmente sean la misma máquina en cuanto a diseño interno… ¿entonces a que viene hablar de dos nombres en clave? Ahora os dire una cosa que os puede sorprender pero… Es posible que Lockhart no llegue jamás a salir al mercado y no se termine como producto final si es verdad de que se trata de un producto dispar como se dice

Es un tema de…

Y el caso es que Albert Penello da motivos de peso y más con su experiencia en la división Xbox durante años de como se lleva el lanzamiento de una consola que ponen un poco de luz y aclaran las aguas que se habían puesto turbías estos últimos días.

Esto es todo, no esperéis más entradas en unos días.