¿Cómo sería una versión mejorada de la Nintendo Switch? (I)

Spread the love

Durante meses los medios se han llenado la boca acerca de la Switch Pro no New Switch y a nivel de hardware se han dicho muchas burradas sobre como sería una iteración mejorada de la actual consola de Nintendo. Es por ello que he decidido crear una consola inventada, pensad que esto no es un producto real, solo un concepto sobre el papel.

Esta entrada es un concepto de una consola que estoy seguro de que en el 99,9% no se va a producir, pero el concepto no es otro que el de crear lo que la gente llama Switch Pro desde mi conocimiento de arquitectura de computadores acumulada en los últimos veinte años. Se ha de aclarar que este sistema no sería la llamada Switch 2, sino una versión mejorada de la actual con tal de solventar los problemas de rendimiento en algunos juegos. Es decir, sería lo que fue la New 3DS respecto a la 3DS original.

El problema de la retrocompatibilidad de las GPU de NVIDIA

A continuación os pondré parte de una entrada del blog anterior, para que os podáis saber el motivo por el cual New Switch no sería Switch 2.

New Switch Pro retro NVIDIA GPU

Traducción:

Kevin C:¿Qué hay sobre Kopit7e o como se llame, ese filtrador de NVIDIA que dice que Nintendo y NVIDIA están trabajando en T239/Dane? Eso es la Switch 2, Y ellos (quienes llevan la cuenta de Kopite7Kimi) tienen un acierto del 100% en las filtraciones de NVIDIA.

Michael: No se soporta para nada con la evidencia actual. Nintendo no puede utilizar una GPU que no sea Maxwell sin tener recompilar todos los juegos o descartar la compatibilidad hacía atrás, debido a que cada juego incluye toda la pila/drivers de la GPU Maxwell, incluyendo los shaders nativos pre-compilados.

Michael, la persona con la cuenta @SciresM, es una de las personas más reputadas del mundo Homebrew de la Nintendo Switch y que mejor que unos cuantos tweets de uno de los mineros de datos más reputados del sector. Fijaos como aquí Michael no está negando lo que dice Kopite7Kimi, sino que lo que niega es que dicha GPU sea la de una iteración mejorada de la consola actual.

New Switch SciresM

Traducción:

Kevin C: Seguro que ellos pueden. NVIDIA puede hacer que Dane sea compatible a nivel de binario con Maxwell.

Michael: Seguro, NVIDIA puede hacer una arquitectura futura que sea totalmente compatible en hardware con Maxwell, pero las arquitecturas sucesoras existentes (Pascal, Volta, Turing y Ampere) no son compatibles hacia atrás. De todos modos, y de nuevo, no hay ninguna evidencia que sostenga esto (la creación de arquitectura compatible hacia atrás con Maxwell) de ninguna manera.

¿Y qué dijo Kopite7Kimi?

Kopite no habla de una iteración mejorada de Switch en sus tweets, habla de que Nintendo va a utilizar una variante del T234 que es el T239 en su futura consola, pero no sabemos en qué está trabajando Nintendo.

Un nuevo SoC para nuestra New Nintendo Switch

Tegra X1 Switch

La solución pasa por la creación de un nuevo SoC, el cual sea totalmente compatible con el de la Switch original, no obstante fabricado en un nodo de fabricación moderno, el cual permita integrar una serie de mejoras para el rendimiento de Switch en los juegos al mismo tiempo que se mantiene la compatibilidad hacia atrás al 100% sin un solo cambio en el código del sistema operativo y los juegos.

Nueva CPU

El SoC de la New Switch debería tener una nueva CPU, más que nada por el hecho que bajo la ISA ARMv8 han aparecido núcleos más avanzados con un mejor rendimiento, pero especialmente hemos de partir de dos puntos muy importantes:

  • Tenemos 3 núcleos de CPU funcionando a 1 GHz, esta puede ir más rápida, sin embargo, únicamente ocurre entre niveles cuando se han de descomprimir los datos desde el eMMC interno, la Game Card o la microSD a la RAM. En ese periodo la GPU baja su velocidad de reloj a menos de 100 MHz, mostrando una imagen en negro.
  • En Xbox 360 y PlayStation 3 teníamos más de tres hilos de ejecución simultáneos funcionando al mismo tiempo, en realidad teníamos 6 en total, situación que se repitió en PS4 y Xbox One. El hecho de que tengamos únicamente 3 núcleos A57 en Switch ocasiona un cuello de botella para los juegos que son conversiones.

La mejor solución sería emplear un núcleo más moderno que el A57, el cual permita utilizar su mayor eficiencia energética para conseguir velocidades de reloj más altas y no colocar un clúster de 4 núcleos, sino 2 de ellos para llegar a los 8 núcleos en total. Este cambió haría que el rendimiento en muchos juegos aumentara considerablemente.

Cortex A75

El problema es que nuestra New Switch necesitaría de un Northbridge nuevo, es decir, la pieza central que comunica todos los elementos del SoC entre ellos. Por suerte no haría falta desarrollar uno nuevo, sino que nos bastaría con sacar el del Tegra «Parker» o X2. Ha llovido mucho desde el A57 y han aparecido otros núcleos mucho más eficientes y binariamente compatibles. ¿Mi apuesta? Una configuración de 8 núcleos del Cortex A75 en dos clústeres distintos. Aunque este no sería la única ventaja que nos daría la adopción del HMP como Northbridge del sistema.

NVIDIA HMP

¿Qué particularidad tiene el Tegra Parker? El uso de un nuevo Northbridge llamado HMP, que ha estado en los Tegra desde entonces y nos permite usar varios clústeres de núcleos de CPU al mismo tiempo en vez de tener que ir cambiando de un bloque a otro según el nivel de rendimiento necesario en cada momento. De paso aclaró que no estoy hablando de utilizar la configuración de 2 núcleos Denver y 4 que se ven en las diapositivas.

Direccionamiento de memoria en New Switch

No debemos confundir que una memoria esté unificada a nivel físico, con que lo este a nivel de direccionamiento, lo que significa que es coherente y, por tanto, todos los procesadores usando el mismo direccionamiento son conscientes de los cambios que realizan los otros sobre ese mismo espacio. Para ello es necesario implementar una serie de mecanismos dentro del chip. En cambio, las unidades que no con coherentes no avisan al resto y tampoco son conscientes de los cambios que hacen los demás, forzando en el proceso que haya una parte de la RAM dedicada a lo que es la parte coherente con la CPU y otra para el resto de dispositivos.

NVIDIA UVA

 

La GPU Maxwell de NVIDIA soporta el llamado direccionamiento virtual unificado, el cual es una solución intermedia donde a nivel de código todo se ve unificado, pero a nivel físico todavía operan unidades DMA para ejecutar copias de una parte de la RAM a otra. Es un caso diferente al de Xbox One y PS4 donde hasta el direccionamiento está explícitamente separado en el código, sin embargo, en una versión mejorada de Switch un sistema de memoria unificado se podría implementar y no rompería la compatibilidad hacia atrás.

Memoria Unificada CUDA 6

Por desgracia pese a que el direccionamiento virtual está unificado, no lo está el direccionamiento físico y cuando es necesario copiar datos a la GPU el proceso es el siguiente:

  1. La CPU, durante los tiempos de carga, lee desde la unidad de almacenamiento donde están los datos y copia a la RAM.
  2. Durante el proceso de copia lo que hace es una descompresión de los datos, los cuales están comprimidos para ocupar menos espacio.
  3. La CPU tiene que hacer un segundo proceso de copia desde las direcciones de memoria para la CPU a las de la GPU.

Con el HMC lo que haríamos sería eliminar el tercer punto, dado que ya no sería necesario. Recordad que en Switch el proceso de copia es llevado a cabo por el sistema de forma automática y no se encuentra en el código del juego. Otra ventaja está en la lista de pantalla, en cada fotograma se envía la lista de pantalla desde la CPU y ha de ser copiada al espacio de memoria de la GPU.

Hay que reducir los accesos a la RAM

Procesar datos no es lo único que consume energía, sino también moverlos de una parte del sistema a otra y cuanto más distancia exista entre el elementos que procesa y el que almacena el dato más energía se acaba consumiendo.

Coste energético desplazamiento datos

Por lo que es importante hacer que los datos se encuentren la mayor parte del tiempo lo más cercano posibles a la memoria. El HMP de nuestra New Switch vendría acompañada de una System Caché, la cual estaría situada más allá de las cachés L2 de CPU y GPU y que tendría las siguientes funciones.

  1. Adoptar las líneas de la caché L2 descartadas por CPU y GPU.
  2. Reducir los accesos a la RAM por parte de CPU y GPU.

Por ejemplo, las listas de comandos de la CPU para la GPU se pueden mantener en dicha caché System Caché sin problemas, para ello podemos implementar un mecanismo clásico.

Lock-Up Caché para búfers

Hay un mecanismo que NVIDIA podría haber implementado que es la idea de la caché con cerrojo, la cual consiste en que hay una parte de la misma que se descarta del resto para ser utilizada como memoria.

El proceso consiste en anular el acceso a esas direcciones de memoria en la RAM principal, dado que la caché hace de sustituto de ellas. A cambio se consigue un acceso sin latencias y directo, lo cual es ideal para que en cada fotograma no se tenga que efectuar el proceso de copia para lista de pantalla de cada fotograma.

Si lo aplicamos de cara a los búfers donde cada cierto tiempo se actualiza la información contenida en ellos entonces es ideal para colocar elementos como las listas de comandos de la CPU para la GPU, así como para los búfers de imagen, si existiese el suficiente espacio para ello en el nuevo sistema, claro esta que para ello haría falta el uso de un SoC de mayor tamaño o en su defecto bajo un nodo de fabricación más alto.

Por el momento dejaremos esto aquí, en la segunda parte os comentaré de los cambios en la GPU de la New Switch.

5 3 votes
Article Rating
Subscribe
Notify of
guest

3 Comments
Oldest
Newest Most Voted
Inline Feedbacks
View all comments
Baley
Baley
8 months ago

Fuera de juegos, Nintendo no creo que tenga prisas en sacar una nueva consola, el Tegra x1 defasado que Nvidia a estas alturas se los debe regalar, les sigue siendo muy rentable porque sus consolas se siguen vendiendo a muy buen ritmo.

Creo que Nintendo va esperar tranquilamente la maduración de los 5nm para plantearse algo.

skayred2005
skayred2005
8 months ago

Conociendo a Nintendo, gpu igual, cpu doble de núcleos, aumento de ram.. y a correr. Pero ahora el contexto es diferente por la crisis de componentes. Así, se podría esperar que incluso no haya versión vitaminda de Nintendo switch.

Jose Luis
Jose Luis
8 months ago

en mi humilde (y desconocida) opinión, creo que a nintendo le iría mejor alejándose lo más posible de nVIDIA y que optase a los nuevos soc exynos+RNDA2 que va a sacar samsung, el tema de la compatiblidad?, no vi a nadie rasgarse las vestiduras porque la switch no fuera compatible con la wii u.
no se que hace nVIDIA (e intel de rebote) que consigue cabrear a todos su socios …. (M$, $ony…)

3
0
Would love your thoughts, please comment.x
()
x