Entrevista exclusiva con Mark Cerny
Hablamos con el padre de PS4.
La llegada de una nueva generación de consolas supone un hito extremadamente emocionante para Digital Foundry. Sony y Microsoft están apretando un enorme botón que reinicia lo que creemos saber sobre el hardware de consolas y para nosotros ahora todo resulta ser una carrera para averiguar exactamente qué hay dentro de ellas, de qué son capaces, cómo se comparan con la tecnología puntera del momento y cómo han adaptado los fabricantes sus diseños para hacer que sus máquinas tengan ventaja sobre la competencia.
La oportunidad de reunirnos con el jefe de arquitectura Mark Cerny durante el evento Develop 2013 era única, la ocasión de hablar con el hombre que no sólo conoce perfectamente el diseño final del hardware, sino que puede explicarnos sobre todo su proceso de desarrollo. El hombre que nos puede contar cómo pensó en el hardware, en las decisiones detrás del equilibrio en los componentes, en los diseños alternativos que se quedaron en el camino y, por supuesto, el hombre que mejor nos puede explicar cómo ha conseguido Sony introducir 8GB de GDDR5 en PlayStation 4 - algo que se cree que fue una decisión de última hora, pero un cambio enorme en las especificaciones de la nueva consola.
A medida que avanzó la entrevista, sin embargo, quedó claro que ese no sería un día de grandes revelaciones. Consciente de que estaba siendo grabado - con todo lo que eso representa - Cerny se mostró esquivo al hablar de ciertos temas, y especialmente con la discusión sobre los 8GB de GDDR5 en particular no podemos evitar pensar que la historia real sigue sin haberse explicado en su totalidad.
Aún así se trata de un fascinante vistazo al proceso y la forma de pensar detrás de PlayStation 4, la visión de la arquitectura y del potencial latente en la computación GPU, algo que el propio Cerny cree que sólo empezará a aprovecharse bien cuando el hardware haya cumplido varios años. Y teniendo en cuenta que Sony realizó el post-mortem de PlayStation 3 un año después del lanzamiento y empezó a trabajar en su sucesora en 2008, no podemos evitar preguntarnos si en 2015 Cerny volverá para desarrollar una eventual PlayStation 5...
"Bueno, Ken [Kutaragi] es un genio, así que no era posible duplicar o repetir su enfoque. Tuvimos que encontrar una forma diferente de hacer el hardware de la consola."
Bueno, Ken es un genio, así que no era posible duplicar o repetir su enfoque. Tuvimos que encontrar una forma diferente de hacer el hardware de la consola.
En 2007 empezamos a hacer un post-mortem de PlayStation 3 para descubrir qué había funcionado y qué no, y PS4 no empezó realmente hasta 2008. Así que cuando tuve mi epifanía - que poseía las habilidades para este trabajo - no había un desarrollo muy activo.
Estoy fuera de Sony, así que trabajo con cualquier organización que tenga Sony. Hice mi presentación justo cuando iban a empezar el proceso.
Creo que ahora mismo es el mejor momento en la historia de los videojuegos para ser jugador. Y si lo miras en términos porcentuales, llegarás inmediatamente a la conclusión de que las consolas son algo pequeño. Pero eso es consecuencia de que haya mucha más gente ahora jugando con videojuegos que la que ha habido nunca. Gracias a las tabletas y los smartphones tenemos ese enorme público que ahora disfruta con los juegos. Lo que los atrae a las consolas son esos pesos pesados para los que están diseñadas - Skyrim y Assassin's Creed - y creo que ahora además tendremos la riqueza de esos pequeños juegos independientes que están llegando poco a poco.
Lo que estudié durante mis vacaciones fue sólo el set de instrucciones de los procesadores y realmente me dio la sensación de que las cosas habían cambiado recientemente y que estábamos muy cerca de una transformación en la arquitectura x86 y en cómo se usaría. Eso no implicaba que fuésemos a usar la arquitectura x86, tan sólo que como resultado de ello me pregunté si podíamos añadirla a nuestra lista de opciones. Entonces, cuando nuestro proyecto de hardware empezó de verdad en 2008, yo y el equipo ICE y gente con responsabilidades de tecnología en Sony hicimos un análisis detallado de x86 y cómo programar en ello se comparaba con otros procesadores.
Miramos al tipo de cosas que estábamos haciendo en SPUs y miramos al código de propósito general. Miramos cómo era escribir en ensamblador en esa plataforma respecto las otras. Miramos el código compilado, hicimos cerca de quince presentaciones diferentes que mostraban aspectos de la arquitectura x86 e hicimos nuestra primera gran reunión con los equipos first party. Pasamos la mayor parte del día detallando lo que habíamos descubierto sobre x86 y que habíamos llegado a la conclusión de que era útil para una consola, pero queríamos preguntarles su opinión acerca de sí realmente les era útil o no.
"La accesibilidad tiene un enorme resultado. Hay 140 juegos en desarrollo para PlayStation 4 en estos momentos, y tenemos el catálogo de lanzamiento más sólido en toda la historia de Sony Computer Entertainment."
Sabes, probablemente esto no responderá tu pregunta, pero hay muchos temas involucrados al trabajar con un fabricante. La relación de negocio es también muy importante. Los plazos son muy importantes, porque puedes trabajar con la gente más lista de la industria, pero si su producto no sale el año específico en el que lo necesitas no puedes trabajar con ellos. Hay un tremendo número de cosas a considerar, y la elección de AMD fue producto de ello.
He usado esa historia sólo porque es la forma más clara que he encontrado de mostrar nuestra nueva filosofía. En la era de PS3 hubiésemos elegido sin dudarlo ese diseño. Pero con la nueva forma de pensar queríamos estar seguros de que la accesibilidad estaba ahí. Escogimos esta combinación de accesibilidad desde el primer momento y un interesante conjunto de características que... hay un artículo de Gamasutra en el que explico los principales puntos... para el tercer o cuarto año. La accesibilidad da un gran resultado. Hay ahora 140 títulos en desarrollo para PlayStation 4 y tenemos el catálogo de lanzamiento más sólido en la historia de Sony Computer Entertainment.
Las consolas tienen una relación precio-rendimiento insuperable. Hay varias razones para eso. Una es que la capa de software entre los creadores de juegos y el hardware es mucho más fina que en un PC. Otra razón es que como el hardware no cambia puedes concentrarte en esa arquitectura en particular y aprender mucho sobre ella para que con los años veas los beneficios en términos de gráficos y la calidad de la simulación del mundo, por ejemplo. Además hemos realizado una personalización significativa de la GPU para asegurarnos de que alcance lo que la gente buscará en 2016 o 2017. Sumando todo eso, creo que a PlayStation 4 le espera un gran futuro.
Yo lo llamo una arquitectura de PC dopada. Y eso es porque la hemos alterado en diferentes aspectos para hacer que sea mejor para jugar. Tenemos memoria unificada, que desde luego hace más fácil la creación de videojuegos - era la petición número uno que reclamaban las compañías. Gracias a ella no debes preocuparte de separar tus recursos de programación de los gráficos, porque nunca tienen los ratios que escogen los diseñadores para la memoria. Y luego para la GPU nos aseguramos que trabajase mejor con computación asíncrona porque creo que la GPU, dentro de un par de años, se usará para mucho más que para los gráficos.
Cuando digo eso mucha gente me responde "pero queremos los mejores gráficos posibles". Resulta que una cosa no es incompatible con la otra. Si miras cómo se utiliza la GPU y sus sub-componentes en un frame, hay muchas porciones del mismo - por ejemplo durante el renderizado de mapas de sombras opacos - en los que buena parte de la GPU no se usa. Así que puedes hacer detección de colisiones, físicas o trazados de rayos para audio durante esos tiempo en los que realmente no afectas a los gráficos. Utilizas porciones de la GPU en ese instante en el que están infrautilizadas. Y si miras todo el frame verás que dependiendo de la fase hay una porción disponible para computación.
"Lo importante es que el hardware no es 100% fijo de forma intencionada. Tiene un poco más de ALU que si sólo pensases únicamente en los gráficos."
Knack es un juego pequeño. Knack no marcará el camino en términos de utilización. Veremos más cuando con equipos como Ubisoft, en los próximos Assassin's Creed o Watch Dogs, o en los nuevos juegos de Naughty Dog o Sony Santa Monica. Creo que Killzone hará algo de eso. Todo lo que hacemos es dar las herramientas a los desarrolladores para que ellos hagan lo que quieran. Si más fidelidad visual es lo más interesante para ese equipo, pueden centrarse en ello. Sólo queríamos asegurarnos de que puedan usar GPGPU también.
Bueno, es cierto que el rendimiento por vatio es muy bueno en Jaguar, y que eso nos ha ayudado en general. Supongo que supimos que nuestro diseño podía acomodar cuatro u ocho núcleos y procedimos en función de ello.
Siendo sincero, cuando le preguntamos a la gente escuchamos todo tipo de respuestas. ¡Un desarrollador incluso nos dijo que su tecnología podía acomodarse a mil núcleos! Pero para nosotros era muy importante la opción más mainstream, lo que la gran mayoría de la industria necesitaría.
Eso fue una filtración incorrecta y para nada una evangelización formal. Lo que cuenta es que el hardware no es fijo al 100%. Tiene un poco más de ALU de la que pensarías si te centras únicamente en los gráficos. Es por eso que tienes la oportunidad, o casi el incentivo, de usar esa ALU para GPGPU.
¡Es totalmente incorrecto! Ese tipo de toolchain no existe. Es la HSA [Heterogeneous System Architecture] de AMD. Es muy emocionante, pero nuestra actual estrategia expone los aspectos de bajo nivel de la GPU a un lenguaje de mayor nivel. Creemos que ahí es donde se obtiene el mayor beneficio durante el primer año.
Hay hardware dedicado para el audio. Lo principal que hace es comprimir y descomprimir streams de audio y varios formatos. Parte de eso es para los juegos, donde tienes muchos, muchísimos streams de audio en MP3 o en otro formato, y el hardware se encarga de eso por ti. O, como parte del sistema, el chat de audio, la compresión y descompresión de eso.
"La latencia de la GDDR5 no es mucho más alta que la latencia de la GDDR3. Desde el punto de vista de la GPU... no cabe duda de que las GPUs se diseñan para ser extraordinariamente tolerantes con la latencia, así que no puedo imaginarme que eso suponga un problema importante."
La GPU es un lugar natural en el que hacer diferentes tipos de procesado de audio. Realmente todo depende la cantidad de paralelización necesaria para ese algoritmo, y eso es algo que varía mucho en función de lo que haces específicamente en cuanto a procesado de audio. Creo que a medida que pase el tiempo, en un par de años, veremos un enfoque híbrido en el que ciertos aspectos del sonido se hagan en la CPU.
Trazamos rayos para ver si puedes disparar a algo, necesitas realmente saberlo para ver qué hacer con la retícula. Sería de un color diferente si puedes disparar a un enemigo o no. Con el audio sería lo mismo, para saber si puedes escuchar un ruido o no. Puedes trazar doscientos rayos. Realmente consume mucho tiempo hacer estos cálculos y resulta bastante natural hacerlo en la GPU. Puedes coger esos doscientos rayos, procesarlos en paquetes de sesenta y cuatro en la GPU y luego que los diseñadores encuentren nuevas formas más creativas de hacer el trazado.
Es realmente el resultado de cómo trabaja nuestro proceso centrado en los desarrolladores. Nos dieron feedback, escuchamos ese feedback y alteramos el hardware como consecuencia de ello. Sobre lo tarde que fue en el proceso, realmente lo que ves aquí es que los desarrolladores fueron muy, muy cumplidores a la hora de mantener secreta la información confidencial. Todo lo que puedo decir sobre este tema es que todo vino de un hacker que trabajaba en solitario, y que ni siquiera nos atacó a nosotros, sino a un desarrollador al que robó documentación tanto de Sony como de Microsoft.
La latencia de la GDDR5 no es mucho más alta que la latencia de la GDDR3. Desde el punto de vista de la GPU... no cabe duda de que las GPUs se diseñan para ser extraordinariamente tolerantes con la latencia, así que no puedo imaginarme que eso sea un problema importante.
Es interesante, porque el ancho de banda requerido varía en función de lo largo que es el juego. Cuanto más largo, menos ancho de banda necesitas para las pantallas que vienen más tarde. También hay otro factor a tener en cuenta: ¿vas a jugar continuamente mientras se descarga o sólo durante unas horas y luego dejarás la máquina en stand-by el resto de la tarde para descargar lo que falta y seguir jugando al día siguiente?
Por supuesto, la infraestructura de banda ancha - no sólo para el usuario, sino del país - es relevante cuando diseñas sistemas. Nuestro enfoque ha sido principalmente construir un concepto que sea atractivo para los usuarios.
[Risas] ¿Puedes poner "Mark se ríe" como respuesta a esto?
Traducción por Josep Maria Sempere.