Eurogamer.es

Exclusiva: Esta es la tecnología de Project Scorpio, la próxima Xbox

Tenemos todos los datos, la hemos visto y hemos hablado con sus creadores.

La semana pasada Microsoft invitó a Digital Foundry a visitar su campus en Redmond para asistir en exclusiva a un primer vistazo de la tecnología de la próxima Xbox, conocida con el nombre clave Project Scorpio. En lo que respecta al anuncio de las especificaciones es una oportunidad sin precedentes: es la primera vez que tenemos acceso tan temprano a los arquitectos clave del sistema, y es también una situación única por el timing. El desarrollo de Scorpio parece que está más avanzado de lo planeado, hasta el punto de que cuando todavía faltan seis meses para su lanzamiento ya hemos podido ver un software impresionante funcionando perfectamente en un chip de producción.

Hablaremos de todas las especificaciones en este artículo, pero la razón por la cual Microsoft nos invitó a hablar con la gente involucrada en el desarrollo es muy clara: los números, aún siendo impresionantes, no representan del todo lo que pretende ofrecer el producto final. Y cifras en términos de unidades de computación y teraflops tampoco representan la pasión que el equipo Xbox ha inyectado en este proyecto. Microsoft quiere demostrar algo: Scorpio no es solo rendimiento, es llevar también la calidad del diseño de consolas a un nuevo nivel, en todos los aspectos.

¿Los titulares? Combinando un inteligente diseño con auténtica potencia bruta Project Scorpio alcanza ese objetivo de seis teraflops que se marcó en el anuncio del E3 del año pasado, gracias a una GPU a medida que se ha diseñado desde el primer día con la idea de maximizar el rendimiento de los actuales juegos de Xbox One y que funciona con unas velocidades de reloj inusualmente altas para una consola. A la GPU se suman 12GB de rapidísima memoria GDDR5 y una CPU también personalizada de ocho núcleos, montando todo ello en un cuerpo compacto con la fuente de alimentación integrada y un sistema de refrigeración puntero para una consola. El rendimiento es destacable; vimos una demo de Forza Motorsport funcionando a 4K nativo con opciones de calidad equivalentes a Xbox One, y alcanzaba los sesenta frames por segundo holgadamente con margen para mucho más, lo cual sugiere que Scorpio será capaz de alcanzar los prometidos 4K nativos con facilidad en la mayoría de juegos, con potencia sobrante que se puede aplicar en otras mejoras visuales.

La carrera hacia las 4K y el Scorpio Engine

En Redmond, la presentación es rápida y concisa antes de que empiece a hablarse con profundidad de tecnología. La idea general de Project Scorpio ha evolucionado desde que Phil Spencer la presentó en el E3 del año pasado, y algunos aspectos clave suenan similares a la propuesta de PlayStation 4 Pro, algo de lo que son conscientes en Microsoft. El objetivo es, claramente, ofrecer gráficos 4K Ultra HD para la nueva generación de televisores, pero la solución de Microsoft incluye mejoras sustanciales en las especificaciones en virtualmente todos los apartados, si se compara con el diseño de Pro. Dicho esto, la filosofía del diseño 'inteligente' de GPU de Sony también se puede ver aquí, aunque aplicado de una forma distinta y con muchísima más potencia bruta.

"Para mi las 4K implican una serie de cosas muy específicas. Es mucho más que mandar esos más de ocho millones de píxeles a la pantalla cuando juegas", explica Kevin Gammill, Group Program Director de la plataforma Xbox. "Es ofrecer esos píxeles con recursos 4K, para que se vean genial. Es ofrecer esos píxeles con HDR y una amplia gama de colores. Es ofrecer esos píxeles sin que el frame-rate sea menor al que tendrías en la versión 1080p de ese juego - eso es súper importante para nosotros. El audio espacial también añade mucho a la inmersión de la experiencia: para que la experiencia jugable sea perfecta no es solo lo que ves, es también lo que escuchas".

En la nueva consola resulta ser fundamental el Scorpio Engine, un nuevo SoC (system on chip) desarrollado una vez más en colaboración con AMD. Al igual que otros apartados de la máquina, el diseño del nuevo procesador se basó en un flujo de trabajo revolucionario - uno que solo se podía lograr en una actualización a mitad de generación.

Richard Leadbetter presenta las especificaciones finales de Project Scorpio.

Project Scorpio Xbox One PS4 Pro
CPU Ocho núcleos X86 a medida a 2.3GHz Ocho núcleos Jaguar a medida a 1.75GHz Ocho núcleos Jaguar a 2.1GHz
GPU 40 unidades de computación a medida a 1172MHz 12 unidades de computación GCN a 853MHz (Xbox One S: 914MHz) 36 unidades de computación GCN mejoradas a 911MHz
Memoria 12GB GDDR5 8GB DDR3/32MB ESRAM 8GB GDDR5
Ancho de banda de la memoria 326GB/s DDR3: 68GB/s, ESRAM máx. 204GB/s (Xbox One S: 219GB/s) 218GB/s
Disco duro 1TB 2.5 pulgadas 500GB/1TB/2TB 2.5 pulgadas 1TB 2.5 pulgadas
Unidad óptica 4K UHD Blu-ray Blu-ray (Xbox One S: 4K UHD) Blu-ray

"Cuando nos decidimos por las 4K Andrew [Goossen] y su equipo hicieron un análisis bastante profundo", añade Gammill. "Tenemos esta herramienta llamada PIX [Performance Inspector for Xbox], que nos permite capturar trazas de la GPU. Él y su equipo estudiaron profundamente una gran variedad de títulos con el objetivo de que cualquier juego a 900p o más pudiesen funciona con el mismo frame-rate a 4K en Scorpio. Eso era nuestro gran objetivo, así que con eso empezamos a trabajar en las especificaciones del Scorpio Engine. No fue simplemente llamar a AMD y decirles que queríamos este componente y este otro. Se ha hecho mucho trabajo a medida".

Tradicionalmente los creadores de juegos trabajan para las características de la plataforma, pero debido a que el brief de diseño de Scorpio era escalar los títulos existentes a 4K, el equipo de hardware podía analizar juegos ya disponibles y personalizar el diseño para ajustarse a características comunes. PIX proporcionó datos que luego se incorporaron a un emulador de hardware, en el cual el equipo de Microsoft podía ver cómo funcionarían esos juegos con el futuro hardware de Scorpio. Se probaron múltiples configuraciones para conseguir el mejor equilibrio posible.

"Lo que hicimos fue tomar capturas PIX de todos los desarrolladores top... y luego analizar todas ellas a mano y extrapolar cuál sería el trabajo necesario para que ese juego funcionase renderizando a resolución 4K", explica Andrew Goosseen, Technical Fellow en la sección de gráficos. "Entonces teníamos un modelo para todos los grandes éxitos de Xbox One y podíamos alterar la configuración del número de CUs, la velocidad de reloj, el ancho de banda de memoria, el número de back-ends de renderizado, el número de shader engines, el tamaño de la cache. Podíamos alterar nuestro diseño y descubrir cuál era la configuración óptima. Fue increíblemente valioso para nosotros poder tomar estas decisiones, porque al final estos juegos de Xbox One son los que queríamos que funcionasen a 4K".

Lo más destacable es que esto ocurrió hace años, antes de que se fabricase ningún hardware. El conocimiento que adquirieron al analizar los juegos de Xbox One también permitió una personalización más compleja del hardware de AMD.

"También tuvimos en cuenta el hecho de que ahora entendemos la arquitectura de AMD realmente bien, y cómo rinde con nuestros juegos", prosigue Goossen, "así que pudimos examinar las colas internas, buffers, caches y FIFOs que conforman esta profunda pipeline que, si puedes encontrar las partes en las que se producen los cuellos de botella, en una pequeña área del procesador podemos aumentar los tamaños y conseguir ganancias que resulten efectivas".

El resultado final son cuarenta unidades de computación Radeon en el Scorpio Engine, cuya velocidad asciende a unos impresionantes 1172MHz - un gran incremento respecto a los 853MHz de Xbox One, o incluso de los 911MHz de PS4 Pro. La forma en que Microsoft ha logrado esto habla de la calidad del trabajo de los ingenieros, pero además resulta que la velocidad de la GPU de Scorpio es tan solo 94MHz más baja que el máximo que alcanza el boost de la tarjeta gráfica RX 480 basada en Polaris, la cual solo tiene treinta y seis unidades de computación y requiere un aparatoso disipador para mantener dicha frecuencia.

"Esos son los detalles más destacados, pero hay muchas otras configuraciones que tuvimos que hacer", explica Goossen mientras señala un mapa del procesador Scorpio Engine. "Como podéis ver, hemos doblado la cantidad de shader engines. Esto tiene como efecto una mejora de 2,7 veces el ratio de triángulos y vértices cuando incluyes el boost de la velocidad de reloj. Hemos doblado el número de back-ends de renderizado, lo cual aumenta 2,7 veces el fill-rate. Hemos cuadriplicado el tamaño de la cache L2 de la GPU, una vez más con el objetivo de obtener el mejor rendimiento a 4K".

Desbloqueando la potencia: memoria, CPU y audio

Los números cuadran: Microsoft ha cumplido con el objetivo de los seis teraflops de rendimiento en la GPU, pero se necesitan otras mejoras en otras áreas de la arquitectura de la consola para maximizar la efectividad del hardware. Tal y como hemos comentado muchas veces en nuestros análisis de tarjetas gráficas, las GPUs requieren un montón de ancho de manda para soportar las cantidades de pixeles que se mueven en Ultra HD.

"Con los recursos 4K, las texturas son más grandes y también los objetivos de render. Esto implica un par de cosas: necesitas más espacio y necesitas más ancho de banda. La pregunta es, ¿cuánto?", dice Nick Baker, Distinguished Engineer. "Odiaríamos crear esta GPU y luego acabar quedándonos cortos con la memoria. Así que todo en ese análisis del que hablaba Andrew pudimos estudiar el efecto que tendrían diferentes anchos de banda de memoria, y rápidamente vimos que necesitaríamos más de 300GB/s. Al final decidimos optar por 326GB/s. En Scorpio estamos usando una interfaz GDDR5 de 384 bits, y eso son doce canales. Cada canal es de 32 bits".

Scorpio reparte sus módulos GDDR5 a lo largo de una interfaz GDDR5 de 384 bits ("Tenías razón con eso", dice Goossen entre risas) con doce canales de 32 bits. Esos módulos funcionan a 6.8GHz, lo cual ofrece un ancho de banda de 326GB/s, con el beneficio adicional de que Microsoft usa el sistema de compresión de color delta (DCC) de AMD, un elemento que no estaba presente en Xbox One. Y sí, Scorpio tiene 12GB de memoria, tal y como indicaba el render de la placa madre que mostró Microsoft en el E3, de las cuales 8GB están disponibles para los desarrolladores y 4GB se reservan para el sistema. Eso supone 1GB extra de memoria reservada respecto a Xbox One, necesaria para que el dashboard funcione a 4K nativo. Los juegos tendrán a su disposición un 60% más de memoria, y para garantizar que los tiempos de carga son consistentes con los de los juegos de Xbox One Scorpio montará un disco duro de 1TB con un ancho de banda un 50% más grande.

Tal y como desvelamos hace un par de meses, el diseño de Scorpio descarta la ESRAM. "Con la memoria de sistema que tenemos, tenemos suficiente ancho de banda para cubrir lo que obteníamos con la ESRAM", aclara Nick Baker. "Simplemente usamos el sistema de memoria virtual para mapear las 32MB de dirección física que los juegos antiguos creían tener en la GDDR5. La latencia es más alta, pero en términos del agregado de rendimiento, la mejora en el ancho de banda y el incremento en el rendimiento de la GPU lo compensan y garantizan que no hay problemas".

En lo que respecta a la CPU, se ha especulado mucho con que Scorpio utilizaría la nueva tecnología Ryzen de AMD, algo que creíamos improbable debido a los tiempos de fabricación, por no mencionar que Microsoft ya dijo el año pasado que su nueva consola tendría ocho núcleos. Todo apuntaba en realidad a unos núcleos Jaguar como los de Xbox One pero más veloces, y al final resulta que la configuración de la CPU de Scorpio es una evolución de dicha tecnología, aunque con muchos cambios y con tareas clave que se descargan en el hardware dedicado.

"Así que son ocho núcleos, organizados en dos clusters con un total de 4MB de cache L2. Estas CPUs están hechas a medida para Scorpio y funcionan a 2.3GHz. Volviendo a los objetivos, queríamos mantener el 100% de retrocompatibilidad con Xbox One y Xbox One S, al tiempo que aumentábamos el rendimiento" explica Nick Baker.

Los nuevos núcleos x86 de Scorpio son un 31% más rápidos que los de Xbox One, con muchos cambios a medida para reducir la latencia y mantener el procesador más ocupado, aumentando también la coherencia en el rendimiento entre la CPU y la GPU. También se descargan muchas cosas en el hardware, parte de lo cual se hereda de Xbox One pero con otros aspectos radicalmente nuevos. El procesador de sonido de Xbox One da el salto a Scorpio y gana una nueva funcionalidad, surround espacial con el que se añade un componente de 'altura' a la actual configuración 7.1. Scorpio también será compatible con Dolby Atmos para juegos, Dolby Atmos para auriculares y presentará un formato propietario de Microsoft llamado HRTF, desarrollado por el equipo de Hololens. Debido a que el APB (Audio Processor Block) es básicamente idéntico al de XboxOne, todas las iteraciones de la consola se beneficiarán de esa mejora en el sonido surround.

Sin embargo, el aspecto potencialmente más emocionante en el rediseño de la CPU no está relacionado con los bloques del procesador, sino en el command processor que gestiona la GPU - el hardware que recibe las instrucciones de la CPU y las envía al núcleo gráfico.

"Básicamente hemos pasado a Direct3D 12", explica Gooseen. "Hemos añadido eso al command processor de la GPU y lo que significa es que con todas las invocaciones API de alta frecuencia que hacen los juegos, todas se implementan de forma nativa en la lógica del command processor, con lo cual la comunicación del juego con la GPU es súper eficiente".

Procesar las llamadas de dibujado -diciéndole al hardware gráfico qué debe dibujar- es una de las tareas más importantes que realiza la CPU. Esto puede consumir un montón de recursos del procesador, con una pipeline que normalmente supone miles -puede que incluso cientos de miles- de instrucciones de la CPU. Al descargarlo en el hardware de Scorpio, cualquier llamada de dibujado se ejecuta con apenas once instrucciones, y solo nueve para un cambio de estado.

"Es un gran logro para nosotros y para los desarrolladores que han adoptado D3D12 en Xbo, ya que nos han dicho que han podido reducir la carga de renderizado en la CPU a la mitad, algo bastante increíble porque ahora la porción del driver supone una fracción muy pequeña", añade Goossen.

Seamos claros, entonces: Project Scorpio no tiene núcleos Ryzen, pero el equipo Xbox no está preocupado por ello. "En lo que respecta a la CPU, seguimos cumpliendo con los objetivos gracias a los cambios a medida que hemos realizado", apunta Kevin Gammill. "Al final seguimos siendo un producto de consumo. Queremos tener un precio que sea atractivo para los consumidores. Hay que equilibrar las dos cosas".

El procesador Scorpio Engine tiene un tamaño de 360mm2, con siete mil millones de transistores. Pudimos ver el mapa del chip, con los cuatro shader engines ocupando gran parte de la die, situados a la izquierda. Cada SE tiene once unidades de computación, de las cuales se desactiva una en cada bloque para aumentar la viabilidad de los chips en la línea de producción. A la derecha de la GPU están los dos clusters de núcleos CPU a medida, mientras que la interfaz de memoria se desvía a los extremos del chip.

También se integra el último media block de AMD, con lo cual la función Xbox GameDVR se mejora hasta 4K60 usando el codec de nueva generación HEVC, e incluso puedes captura tu contenido con HDR. También se introduce lo que Microsoft denomina captura de pantalla retroactiva, con la cual puedes moverte por tus capturas frame a frame para sacar la mejor imagen, sin tener que apretar el botón en el momento exacto, como hasta ahora.

"Para la pantalla, evidentemente, usamos HDMI 2.0 - lo necesitamos para el frame-rate adicional a 4K, así como HDR y la mejora en la gama de colores", explica Baker. "Además, siempre hemos creído en la idea de tener una potencia de proceso flexible con tres planos, así que puedes tener el juego, el dash y vídeo reproduciéndose al mismo tiempo. Cada uno tiene capacidades simétricas en términos de sampling, con lo cual tenemos un filtro multi-tap de gran calidad. Por ejemplo, si renderizas a 4K y usas un televisor 4K, puedes usar eso para hacer un sample de gran calidad".

El downsampling a 1080p es un punto importante. Los lectores habituales de Digital Foundry saben que somos muy vocales con la idea de que los modos PS4 estén disponibles para todos los usuarios, independientemente de la pantalla que se conecte a la consola. Los modos de rendimiento deberían estar disponibles para los usuarios con 4K, mientras que el renderizado Ultra HD debería estar disponible para hacer downsampling para los usuarios que usan televisores 1080p. Microsoft obligará a los desarrollares a esto, aparte de imponer el requisito de que todos los juegos funcionen con el mismo frame-rate (o mayor) que en la Xbox One estándar.

Construyendo Scorpio: el formato y la refrigeración

La velocidad de reloj de la GPU es lo que realmente destaca en Project Scorpio, el aspecto que desafía al actual diseño de consolas. El hardware de la actual generación ha utilizado frecuencias bastante conservadoras para minimizar el calor dentro de un formato para la carcasa bastante restringido. Cómo ha logrado esto Microsoft es algo destacable.

"La verdad es que al tener como objetivo un diseño compacto y también la eficiencia general y minimizar el consumo, hacemos un montón de cosas que son bastante especiales", nos explica Leo Del Castillo, director general de diseño de hardware de Xbox. "Una de las cosas que hacemos es, básicamente, ajustar los voltajes de cada uno de los chips y optimizarlos para que los chips obtengan exactamente lo que necesitan para cumplir sus tareas... eso ofrece un grado de eficiencia mucho mayor para el sistema y nos permite descartar un montón de energía malgastada que se traduciría en más calor".

Es una técnica que Microsoft denomina 'el método Holvis', en honor al ingeniero que la desarrolló. Cada procesador Scorpio Engine que sale de la línea de producción de TSMC tiene su propio perfil específico de energía. En vez de adoptar una estrategia idéntica para todos, la cual no sería tan óptima, Microsoft crea la placa para que se adapte al chip. Pero aún así Scorpio sigue ofreciendo una tecnología muy potente, con lo cual está presente el problema del calor. En este aspecto, una vez más, la solución escogida resulta ser revolucionaria para una consola.

Resumiendo, Microsoft utiliza un disipador con una cámara de vapor. Esto consiste en un recipiente de cobre que conforma su base, en el interior de la cual hay agua destilada e ionizada en vacío. El calor es absorbido por el agua, donde se vaporiza, y ese vapor se conduce desde los puntos calientes hasta condensarse en el disipador. Es un sistema muy eficiente, pero el calor se sigue teniendo que expulsar del sistema y los ventiladores axiales estándar que usaron en todo el hardware Xbox anterior no serían suficiente.

"Optamos por un diseño de ventilador centrífugo a medida", prosigue Del Castillo. "Parece como el compresor de un coche, casi como un intercooler. Cada parte ha sido diseñada específicamente para esta aplicación".

En su presentación Del Castillo montó literamente una unidad Project Scorpio de pre-producción ante nosotros. Teniendo en cuenta las avanzadas técnicas de fabricación usadas, el resultado es un diseño simple, elegante y modular que casi ocupa todo el espacio disponible. Vimos como el disco duro se colocaba sobre amortiguadores diseñados para absorber las vibraciones, reduciendo los ratios de error y garantizando una transferencia óptima de los datos. Y luego está la unidad UHD Blu-ray, básicamente la misma que se usó en Xbox One S aunque con pequeñas modificaciones para adaptarla al chasis de Scorpio.

También fue reconfortante ver que Microsoft mantiene la fuente de alimentación interna, en este caso una PSU universal de 245W que, según Castillo, es la más eficiente en la historia de Xbox. En la parte porterior de la consola la disposición de los puertos es idéntica a Xbox One S, incluyendo un socket estándar (en lugar del gran conector con tres patas que usa PS4 Pro). La idea es que de esta forma los usuarios que tienen ahora una Xbox One S conectada a su equipo puedan intercambiarla por una Scorpio sin ningún tipo de esfuerzo. Puesto que la disposición de los puertos se basa en la de Xbox One S, no se incluye el puerto Kinect de la Xbox One original (con lo cual se requiere el adaptador USB), pero sí se conserva la entrada HDMI. El diseño final de la carcasa (o 'ID', como la llaman en Microsoft) se presentará en el E3, donde creemos os sorprenderá gratamente.

Forza en Scorpio: potencia de sobras

Pero lo importante son los hechos, no las palabras. Las especificaciones son una cosa, pero Microsoft promete que los juegos a 900p y 1080p de Xbox One deberían poder funcionar a 4K nativo en Project Scorpio. Necesitábamos ver una prueba de ello, lo cual implica ver software, algo un poco complicado a tantos meses vista del lanzamiento. Aún así Microsoft cumplió, mostrándonos una demo de ForzaTech con el motor de Xbox One funcionando a 4K nativo y 60FPS estables como una roca. Y, tal y como podéis ver en la captura de pantalla que acompaña estas líneas, el uso de la GPU es significativamente bajo, entre el 60% y el 70% (tenéis una versión PNG a 4K de la imagen aquí) - aunque debemos insistir en que esto es básicamente un port de Xbox One y que no es representativo de la calidad que veremos en el software final.

"Esto es nuestro trabajo. Esto es ForzaTech funcionando a 60FPS en 4K", explica el arquitecto de software de Turn 10, Chris Tecton. "Todavía funcionamos con las opciones que habríamos usado en Forza 6, aunque esto también incluye contenido a 4K... hemos creado recursos para este set de los modelos, coches, circuitos y demás. Nos hemos asegurado de que las texturas a 4K funcionen bien. Las teníamos a las resoluciones correctas y aún así nos sobraba ancho de banda. Si bajamos al nivel original y no tuviésemos recursos a 4K, la diferencia sería quizás del 1%. Estamos limitados en otras cosas muy diferentes al ancho de banda de la memoria. Ha sido genial y este es el punto en el que está".

La demo funciona con la máxima cantidad de coches posible y con la IA completa y las simulaciones de las físicas. Es una prueba de estrés muy exigente, usada para garantizar que Forza Motorsport funciona a los 60FPS por los que es conocida la saga. El port de ForzaTech a Scorpio se completó en apenas dos días y funcionaba a pleno rendimiento desde el primer momento. De hecho, el equipo puede subir el nivel de calidad al equivalente de Ultra en PC y mantenerse en un 88% de utilización de la GPU; en términos de uso del sistema esto es similar a Xbox One a 1080p con sus opciones estándar. Obviamente es solo un juego, pero la idea que se extrae es que Scorpio no solo escala los motores de Xbox One a 4K; con el motor de Forza, al menos, sigue quedando potencia sobrante.

"Lo genial de este asunto es que podemos destinar nuestro tiempo a dar el paso en dirección al futuro", explica Tector. "En vez de pensar en cómo vamos a pelearnos para conseguir el rendimiento necesario podemos decidir qué sacrificios hacer y cuales no y pasar tiempo iterando, buscando una calidad de imagen mucho mayor. En vez de preocuparnos por intentar llegar al final a una determinada resolución o frame-rate, podemos dedicarnos a buscar la calidad de imagen final".

Traducción por Josep Maria Sempere.

Comentarios (34)

Ya no se pueden publicar más comentarios. ¡Gracias por tu aportación!