#1 Software 3D

rlbench

Estas cifras son del número de Enero de 1995 de la revista EDGE en una era donde las primeras tarjetas 3D no habían aparecido y las que lo eran eran desaceleradoras realmente. No me fio mucho de las cifras pero lo dejo como una curosidad. Hay que tener en cuenta que las cifras de Saturn y PlayStation por aquel entonces no se alejaban mucho de lo que supuestamente se podía conseguir con uno de los primeros Pentium en un benchmark, lo que las hacía muy impresionantes para la época.

#1 Era de los rasterizadores 3D 

Hasta la llegada de la GeForce 256 no había unidad de transformación de la geometría en PC por lo que todo ese trabajo recaía en la CPU y por tanto la tasa de polígonos por segundo es limitada, los siguientes resultados son utilizando el 3DMark99 y están sacados del foro de Vogons, en ellos he descartado cualquier GPU con motor geométrico en su interior pese a que el 3DMark99 ni lo reconoce. Empezando por los resultados más simples, en ellos se puede ver como el rendimiento de la CPU para la geometría en aquella época era muy importante.

3dmark99

La demostración mueve unos 20.000 poligonos por fotograma y al no haber unidad geométrica dedicada la GPU tenía que encargarse de todo el trabajo de transformar, iluminar y rasterizar. Empecemos por las configuraciones menos potentes en cuanto a procesador y gráfica 3D que he encontrado para la comparativa.

CPU Gráfica Fotogramas Geometria
CyrixPr200 166Mhz Voodoo Bansheee 8,1 162.000
Pentium 166MMX Voodoo2 11,5 230.000

El lanzamiento de estas dos GPUs es de antes de la aparición de Dreamcast pero sus cifras las situan por encima de lo que eran PlayStation y Nintendo64. Pero lo que quiero que veaís es como la CPU influenciaba en la geometría de la escena y estose puede ver en comparando dos PCs son la misma arquitectura de CPU a diferentes velocidades pero con el mismo rasterizador, en este caso la muy popular por aquel entonces Voodoo 3.

CPU Gráfica Fotogramas Geometria
Pentium III 450 Mhz Voodoo 3 3000 28,3 566.000
Pentium III 900Mhz Voodoo 3 3000 58 1.160.000

Es decir, en estos casos la tasa de polígonos por segundo depende de la CPU pero hay casos donde el rasterizador se convierte en un cuello de botella porque la CPU puede calcular más polígonos que los que el rasterizador puede dibujar, el caso siguiente es la comparación entre un Pentium III a 1.4 Ghz pero con dos GPUs distintas de la misma familia, fijaos como la Voodoo 4 4500 se convierte en este caso en un cuello de botella.

CPU Gráfica Fotogramas Geometria
Pentium III-S 1.4 GHz Voodoo 5 5500 82,4 1.648.000
Pentium III-S  1.4 GHz Voodoo 4 4500 64,4 1.288.000

Pero si queremos un caso muy, pero que muy extremo…

CPU Gráfica Fotogramas Geometria
Pentium IV 1.6 Ghz  RIVA TNT2 71,1 1422000

La tasa de relleno de la Voodoo 4 4500 es de 333 Millones de pixeles texturizados, la de la Voodoo 5 5500 es de 1333 Millones de pixeles texturizados y la de la Riva TNT 2 de unos 300., en los casos de las Voodoo 4 4500 y de la Riva TNT es la tasa de relleno del rasterizador el que es un cuello de botella, mientras que en el caso de la Voodoo 5 5500 el problema ya no es  pero en el segundo caso no ya que es la capacidad del propio procesador la que se queda corta respecto a la capacidad del rasterizador.

Ahora bien, como curiosidad… ¿Que ocurre si utilizamos una CPU mucho más contemporanea? Como un Core i5 3570… ¿Debería sacar unos picos increibles no? Pues no, porque la CPU genera más geometria que lo que el rasterizador puede dibujar.

CPU Gráfica Fotogramas Geometria
Core i5 3570 Voodoo 4 4500 105,7 2.114.000
Core i5 3570 Voodoo 5 5500 142 2.840.000

¿Cual era la consola rival por aquel entonces a nivel de rendimiento? Pues la Dreamcast de Sega.Aquí se comprueba una vez más como la tasa de relleno se convierte en un problema enorme, pero aún así las cifras eran espectaculares respecto a lo que había en consola y el éxito de PlayStation era un cuello de botella

dreamcast

Dicha consola tenía juegos como Soul Calibur que eran capaces de colocar 1.000.000 de polígonos por segundo pese a tener un rasterizador de solo 100 Megapixeles…

nulldc_1

¿Como se explicaba esto? El PowerVR 2 DC era un tile renderer por lo que los efectos de multitexturizado los solventaba en la memoria interna gracias a dividir la imaen en tiles y por tanto teniendo realmente una tasa de relleno real muy superior debido al mayor ancho de banda por lo que que tenía en teoría y esto le permitía aguantar el tipo estoicamente frente a los PCs de la época pese a su teórica inferior tasa de relleno pero no era lo único bueno que tenía la consola de Sega, la unidad de coma flotante del Hitachi SH4 era una verdadera bestia parda en comparación en lo que había en los PCs de la época que tenía una potencia en coma flotante pauperrima que los dejaba con una alta desventaja y de ahí que la creación de la unidad geométrica fuese un importante salto adelante pero esto ya forma parte del segundo apartado.

#2 Era de la GPU completa

En los siguientes resultados la CPU pierde peso porque el cálculo de la geometría de la escena recae sobre el motor geométrico de la GPU, la demostración es con el 3DMark 2001 que además mide la capacidad de multitexturizado por lo que la escena es la misma en ambos casos en lo que a complejidad geométrica se refiere.

3dmark01

La demostración movia la friolera de 200.000 poligonos en un solo fotograma, en poco tiempo el rendimiento geométrico de los juegos subió como la espuma y la potencia de la CPU dejo de tener tanta importancia de cara a la geometría de la escena pero no por ello dejo de ser importante (y aún lo sigue siendo) pero el liberar la CPU de dicha carga permitió aumentar la tasa de polígonos generados.

La primera tabla la he sacado de aquí y muestra muy bien el impacto de la unidad geométrica sobre el rendimiento.

CPU Grafica Demo 1 Bajo (1 Textura) Demo 1 Poligonos Demo 1 Alto (3 Texturas) Demo 2 Poligonos
Pentium III 1.3 Ghz GeForce DDR 49,9 9.980.000 22 4.400.000
AMD Athlon XP 2.26 Ghz Voodoo 5 5500 43,2 8.640.000 16,3 3.260.000
AMD Athlon XP 2.26 Ghz GeForce DDR 50,7 10.140.000 26,4 5.280.000

La GeForce DDR pertenece a la primera generación de GPUs con unidad geométrica y por tanto las diferencias con las CPUs más potentes no se veían pero eran en los albores de la GPU y el rendimiento aún tenía que aumentar más, hay que aclarar que la consola que se lanzo por aquellos tiempos en el mercado fue la PlayStation 2 aunque lo hizo en un periodo entre la primera GeForce y la segunda por lo que lo mejor es ir a la segunda GeForce, cuya arquitectura era una leve mejora y una subida de vueltas respecto a la primera.

CPU Grafica Demo 1 Bajo (1 Textura) Demo 1 Poligonos Demo 1 Alto (3 Texturas) Demo 2 Poligonos
AMD Athlon XP 2.26 Ghz GeForce 2 GTS 73,7 14.740.000 38,3 7.660.000

La otra consola que aunque salió más tarde es comparable es con la GameCube, en la siguiente tabla se pueden ver las cifras del la tercera entrega de la saga Rogue Squadron, la que más rendimiento saco de la potencia geométrica de la consola de Nintendo.

rs2hangarpolys_zps816b8c04

GameCube podía mover un juego así a unos 60 fotogramas por segundo, eso se traduce en unos 12.203.100 poligonos por segundo, lo que coloca la consola en una orbita entre las dos primera GeForce que eran GPUs DX7. Otro juego que podemos comparar es Resident Evil 4.

re4gc

Resident Evil 4 pone en pantalla unos 204.103 poligonos y funciona a unos 30 fotogramas por segundo pero la complejidad gráfica de la escena (multitexturizado) pero sus 6.123.090 son tampoco una mala cifra para una GPU de la época.

¿Y que hay de PlayStation 2? La consola de Sony debido a su dificultad tuvo una curva progresiva a la hora de aprovechar sus capacidades, el primer juego de la consola fue el Ridge Racer V.

rrvps2

Olvidaos de lo errores visuales del emulador y de que marque solo 1.5 fps, la cifra que nos importa con los 38980 que es el número de poligonos por fotograma y sabemos que el original de PS2 funciona a 60 fps por lo que la cifra serían unos 2.338.800, ahora veamos el otro juego de lanzamiento que fue el Tekken Tag Tournament.

tekkentagps2

Sabemos que también funciona a unos 60 fps por lo que la cifra sería de 1.999.260, una cifra que quedaba muy por debajo de las GeForce y de lo que sería GameCube pero por encima de Dreamcast. No obstante es injusto mirar juegos de la primera hornada de la consola pese a que por lo general PS2 era tan compleja de programar que sacarle jugo era muy dificil, un caso sonado era el del pésimo port de Resident Evil 4 de GameCube a PS2 que recibió un recorte importante en cuanto a geometría.

re4ps2

El juego funcionaba a unos 30 fotogramas por segundo por lo que movía en su versión de PS2 unos  693.120 por lo que si tenemos en  cuenta esa baja tasa de polígonos entonces no es de extrañar que haya gente que diga que la pésima versión de PS2 la podría correr Dreamcast. Para terminar tenemos el que por aquel entonces se considero el juego estrella de la primera hornada, Metal Gear Solid 2 corriendo a unos 60 fps estables y moviendo unos 1.216.980

mgs2polys_zps23ff7900

Por suerte, hay juegos con rendimientos mucho mejores dentro de la primera generación de juegos como el primer Burnout.

burnoutps2

Con uos 78.699 poligonos por fotograma y unos 60fps de rendimiento esto lo colocaban muy por encima de otros juegos de la PS2 al mover unos 4.721.940 poligonos por segundo, otro ejemplo de este aumento de rendimiento espectacular fue el Dinasty Warriors 2 que se situa en cifras muy similares.

dw2ps2

Y hay que tener en cuenta que ese no fue el límite de la consola sino que son juegos de la segunda hornada, pero las cifras de rendimiento eran tan malas en la mayoría de juegos respecto a lo que supuestamente podía ofrecer la consola que Sony se reboto de mala manera contra los desarrolladores y los llamo vagos y que no sabían aprovechar la máquina correctamente. No he conseguido información sobre la tercera hornada de juegos, pero por lo visto la cosa se normalizo en los 52.000 poligonos/fotograma y la consola en teoría podía llegar a los 145.000 por fotograma.

sonycabreops2

Una escena de 145.000 poligonos por fotograma a 60fps son unos 8.700.000 poligonos por segundo, una cifra que aunque es un salto enorme respecto a lo que era Dreamcast y dejaba aún más atrás a la consola de Sega hace que PS2 comparada con el hardware de PC contemporaneo a la época y su rival directa en cuanto a rendimiento (GameCube) no fuese tan espectacular.

Pero nos falta una consola, la más temible de todas tecnicamente hablando.

original_xbox_1

La primera Xbox iba más allá y equipaba en su interior la GPU NV2A, una versión modificada de la GeForce 4 junto a un Pentium III a 733Mhz como CPU. Pensad que GameCube y PS2 son tecnicamente contemporaneas a las dos primeras GeForce. Al utilizar hardware de PC su rendimiento lo podemos extrapolar tomando como referencia la GeForce Ti4600 que utiliza la misma GPU que la primera Xbox pero funcionando a 300 Mhz en vez de 233 Mhz.

CPU Grafica Demo 1 Bajo (1 Textura) Demo 1 Poligonos Demo 1 Alto (3 Texturas) Demo 2 Poligonos
AMD Athlon XP 2.26 Ghz GeForce Ti 4600 179,2 35.840.000 68,2 13.640.000
Pentium III 733 Mhz* NV2A 139,2 27.840.000 53 10.600.000

La ventaja de rendimiento de la primera Xbox respecto a la competencia era apabullante gracias a la GPU que llevaba en su interior lo que le daba una ventaja importante respecto a la competencia de su época, pero hay que tener en cuenta que era una GPU DX8 compitiendo contra GPUs a nivel DX7 y en el caso de PS2 ni tan siquiera ya que no tenía un set de carácteristicas comparable.

Esto es todo, no se si haré una segunda parte con las consolas HD pero no la esperéis tampoco pronto y este hilo no deja de ser una curiosidad.