¿PS Vita más potente que Wii U? Ni de lejos.

No tenía pensado hacer esta entrada en un principio, pero ante una mentira de proporciones bíblicas como la siguiente no me he podido resistir:

Así como el Wii U tiene sus seguidores, también cuenta con muchísimos detractores, entre ellos a varios desarrolladores. Tal es el caso de el fundador del estudio Nicalis, Tyrone Rodriguez, quien a su parecer opina que la consola de Nintendo no resulta ser más poderosa de lo que es un PS Vita.

¿Desde cuando una mentira es una opinión? Lo digo porque la afirmación de que PS Vita es más potente que Wii U es completamente falsa y se puede demostrar sin problema alguno con los datos que tenemos de ambas consolas y haciendo una comparación técnica del hardware de ambas consolas. Sinceramente no me gusta tener que hacer este tipo de entradas.

#1 CPU
La CPU de Wii U es un PowerPC 750 triple núcleo a 1.24 Ghz con el nombre en clave Espresso, es una versión multinúcleo y a mayor velocidad de la CPU utilizada en GameCube y Wii tal y como nos relata la documentación del procesador:

espresso_intro

En lo que al cálculo de enteros sabemos que dicha versión del PowerPC a 405Mhz (GameCube) tiene un rendimiento de 925 DMIPS utilizando el benchmark Drhystone 2.1, esto son unos 2.28 DMIPS por ciclo de reloj por lo que el total contando los tres núcleos sería de:

2.28 DMIPS por ciclo de reloj*1240 millones de ciclos de reloj*3 núcleos= 8482 DMIPS

Dicho benchmark mide solamente la potencia en cuanto a enteros. ¿Que procesador lleva la PS Vita/TV=

PS-Vita-TV-breakdown

Un Cortex A9 de unos cuatro núcleos… ¿pero cual es su potencia en el Dhrystone?

 

slide_12

Unos 2.5 DMIPS/Mhz, ahora nos falta la velocidad de reloj y por suerte gracias a la “Scene” la hemos podido saber y la información ha provocado urticaria y malestar entre los fanboys de Sony… Es decir, si comparamos velocidad de reloj con velocidad de reloj y ambas son parejas entonces la CPU de PS Vita daría un resultado más grande por la pequeña diferencia en el Dhrystone y el núcleo extra, pero no es así ya que…

7zngtuah

Yifan Lu es un famoso hacker de la scene homebrew de PS Vita, no es un don nadie precisamente y esto es algo que ya aclare en su día. Es decir, no es un capricho ni invención mía que la CPU de la consola vaya a 444 Mhz y que en lo que el Dhrystone se refiere su potencia sea de:

2.5 DMIPS por ciclo de reloj*444 millones de ciclos de reloj*4 núcleos= 4440 DMIPS

El otro tema es la potencia en coma flotante, los PowerPC de las consolas de sobremesa de Nintendo tienen FPUs que pueden funcionar como unidades vectoriales de 64 bits. Esto ya lo comente en su día, por lo que me voy a autocitar para no dar una explicación muy larga:

La unidad PowerPC utilizada por Nintendo en GameCube, Wii y Wii U no es un PowerPC 750 al uso sino que es uno extremadamente modificado en una parte en concreto, de ahí a que no se pueda utilizar un PowerPC más avanzado como podria ser un PowerPC 970, un PowerPC A2 por ejemplo o incluso el núcleo PowerPC en Xbox 360 y PS3.

¿Cual es este cambio? Paired-Singles

Esto viene descrito en una serie de patentes entre IBM y Nintendo (III).

No os preocupéis que no os las voy a describir al dedo, simplemente los PowerPC pueden operar con números de coma flotante en precisión simple, 32 bits, o doble, 64 bits. Normalmente solo puede utilizar un operando por registro, pero Nintendo junto a IBM hicieron modificaciones para poder colocar dos operandos en un registro y poder hacer instrucciones de dos operandos en un ciclo, de ahí el nombre de Paired-Singles.

¿A que es equivalente esto? No se si los más viejos del lugar recuerdan la tecnología 3Dnow! en los AMD K6-2 de finales de los 90. Pues bien, esto es exactamente lo mismo. Por aquella época no existían aún las GPUs con unidad geométrica y por tanto esa parte la calculaba la CPU y dado que GameCube se creo en esos tiempos varias de las innovaciones en PC fueron adaptadas a la nueva consola.

En el caso del Cortex A9 existe una unidad vectorial más avanzada, el llamado Neon, el cual puede operar con cuatro operandos por ciclo de reloj en vez de dos:

Captura de pantalla 2015-11-21 a las 14.04.03

Comparativamente y teniendo en cuenta esto la potencia en coma flotante de ambas CPU es:

  • Espresso: 3 núcleos*2 operandos por núcleo*1240*2 (FMADD)=14.880 MFLOPS (14,88 GFLOPS).
  • Cortex A9 Ps Vita: 4 núcleos*4 operandos por núcleo*444*2 (FMADD)=7104 MFLOPS (7,1 GFLOPS).

Hay que tener en cuenta que la CPU es muy importante desde el momento en que es el primer encargado en la composición de la escena, si una CPU es poco potente entonces el tiempo que tardará en crear las listas de pantalla y hacer su trabajo será mucho más alto por lo que en un entorno donde la tasa de fotogramas este limitado le quitara tiempo a la GPU y en un entorno donde no la tasa de fotogramas se verá disminuida por el hecho que el tiempo por fotograma aumentará.

Es decir, para que PS Vita tuviese más potencia tendría que tener una GPU mucho más potente como para descompensar la diferencia en cuento a la CPU. ¿Es así? Veamos…

#2 GPU.

La GPU de Wii U se encuentra dentro del chip llamado Latte, utiliza la arquitectura RV7x0 con una configuración de 160 Stream Processors y una velocidad de reloj 550 Mhz, la cual fue descubierta por ingeniería inversa sobre la consola.

jaBb1

¿Como sabemos que es una RV7x0? Porque lo dice el SDK de la consola:

GX2 es una API de gráficos en 3D para el sistema Wii U (también conocido como Café). La API esta diseñada para ser tan eficiente como el GX(1) de los sistemas Nintendo GameCube y Wii. Las carácteristicas actuales están modeladas a partir de OpenGL y la serie de procesadores gráficos AMD R7xx. El procesador gráfico de Wii U es referido como GPU7.

Sí buscamos información sobre el R7XX el primer resultado que obtenemos en la Wikipedia es el que nos dice en que serie de tarjetas gráficas esta colocada su tecnología:

R7XX

 

En cuanto al número de Stream Processors ya lo comente en su día en una entrada, la cual reproduzco a continuación:

En cuanto a Wii U la cosa se entiende si tienes en cuenta que usa arquitectura RV7xx aka serie HD 4000, primero de todo la litografía del RV770 (800 Stream Processors) donde se ven marcados claramente los shaders:

die-shot-coloredLa litografía es del RV770 y sabemos que tiene 800 Stream Processors, si cuentas el número de bloques en los SIMD verás que hay unos 40, más o menos tienen la siguiente forma:

RV770CU

Por lo que:

800 Stream Processors/40 unidades= 20 Stream Processors por unidad.

En cuanto a Wii U su litografía es la siguiente:

wiiudie_blocks

Las unidades marcadas como Nx son los shaders, aquí se ven con más detalle:

5oArkj4Tenemos un total de 8 Compute Units, la GPU es de arquitectura RV7xx (lo sabemos por varías fuentes) y si tenemos en cuenta que por Compute Unit hemos deducido que esta arquitectura tiene 20 de ahi viene lo de los 160 Stream Processors.

Por lo que la potencia de la GPU es:

160 Stream Processors*550*2 (FMADD)= 176 GFLOPS.

¿Y que hay de PS Vita? Sabemos que es un PowerVR SGX543MP4 (ver las especificaciones colocadas arriba) y su velocidad de reloj máxima son 222Mhz (también especificado arriba). ¿Pero cual es su potencia?

29

PS Vita utiliza la misma GPU que el iPad 3 pero a una velocidad menor, si hacemos un simple calculo a través de una regla de tres veremos que el PowerVR SGX 543MP4 tiene una potencia por ciclo de reloj de 128 operaciones/ciclo, por lo que a 222 Mhz tenemos una potencia de 28,5 GFLOPS. Es decir, muy alejada de la potencia de Wii U pero es que la cosa no termina en este punto, antes hemos dicha que la GPU de Wii U es del estilo DX10/OGL mientras que el PowerVR SGX 543MP4 se queda en un nivel DX9.3:

PowerVR-GPU-roadmap-Series5-Series5XT-Series6

No creo que haga falta agregar más para demostrar que la afirmación de Tyrone Rodriguez es directamente mentira y por tanto no se puede tratar como opinión en ningún momento.

Anuncios