Stratos: Punto de Encuentro de Desarrolladores

¡Bienvenido a Stratos!

Acceder

Foros





PS4 o como cambiar el paradigma de la programación de juegos

Iniciado por XÑA, 21 de Febrero de 2013, 10:04:37 AM

« anterior - próximo »

XÑA

http://www.fudzilla.com/home/item/30534-sony-releases-ps4-technical-specs

Si es cierto lo que loe, teneos 8 gB de memoria UNIFICADA!!! Eso significa que por primera vez CPU y GPU comparten memoria y  no tenemos que transmitir datos de la GPU a la CPU. Eso significa que al fin, después de un montón de años, yo podré acceder con la CPU DIRECTAMENTE a la memoria que usa la GPU. Esto lo cambia todo!!!

Gallo

Otras tienes licencia para desarrollar en PS4? donde trabajas?

A mi me gustaria saber que tal estará el tema indie, aunque de indie empezará a tener poco por que para aprobechar ese monstruaco mucho contenido hay que crear.

IDandT

Bueno, lo de la memoria compartida, realmente es novedad en playstation.

Xbox 360 ya dispone de 512 Mb de memoria compartida.

Gallo

Cita de: IDandT en 21 de Febrero de 2013, 02:01:43 PM
Bueno, lo de la memoria compartida, realmente es novedad en playstation.

Xbox 360 ya dispone de 512 Mb de memoria compartida.

XDD, esa iba a ser mi respuesta, pero no queria quitarle la ilusion a XÑA que ya debe estar desarrollando algún triple A para la futura consola XD.

De todas formas tengo mis dudas de si "compartida" y "unificada" significa lo mismo, en teoria compartida es que cada uno se queda su trozo de pastel, y unificada entiendo que comparten las mismas direcciones de memoria (como en la nintendo DS), lo que no se si en la shared de la xbox se podian compartir las mismas direcciones igualmente. Puede que me equivoque.

TrOnTxU

En la PS3 realmente puedes tener una textura o un cualquier otro buffer declarado en main ram, trabajar con ella y utilizar la direccion de mem directamente desde GPU (suponemos utilizar Gcm y no PSGL), sin "casi" latencia añadida (respecto en almacenar el buffer en la VRAM). Incluso puedes hacer "guarradillas" como parchear un shader desde la lógica que tengas implementada en una SPU.

Supongo que si es un avance, tiene sentido que las direcciones de la "RAM unificada" se puedan utilizar desde CPU y GPU indistintamente. Supongo que habrá algún tipo de mecanismo de "lock" de una zona de memoria para que no hayan errores de sincronizacion al escribir datos desde diferentes procesadores a la vez (al estilo como bloqueas por mutex o semaforos o lo que sea en una estrategia de threading típica de CPU).


A mi me choca más:
CitarSingle Chip Customer processor/ CPU AMD Jaguar x86-64bit 8 cores / GPU AMD Next Generation Radeon graphics engine capable of 1.84 TFOPS

Falta saber los tamaños de cache para hacer "especulaciones" sobre que cosas van a cambiar a partir del año que viene, pero yo tengo algunas "alocadas predicciones":

1 - Con 8 cores x86 se acaba con el uso del procesador matricial (CELL), y los Helper CPU (SPU en este caso).
Los cores de "Proposito General" se imponen sobre "procesadores especializados" en calculo intensivo. Y esto se queda relegado en exclusiva a la GPU, que en este caso queda integrada dentro del mismo chip.
Estrategia más acorde con los PC actuales, o con consolas como la XBOX, y más fácil de implementar, "portar" y depurar. Pero yo creo que cabe preguntarse hasta que punto se ha podido llegar a explotar la arquitectura CELL.

2 - Para mi sorpresa parece que Mike Acton no acertó en su suposición de que seguramente habria un procesador que ayudara especificamente con las fisicas. Insomniac tendrán que conformarse con tener su sistema de fisicas en CPU de propósito general o procesar alguna cosa con el pedazo de GPU que le han puesto. Parece que lo que insinuaba Acton se cumple, utilizar la GPGPU para fisicas y simulacion en general (seguro que molara para particulas GPU ^^)

3 - La GPU es Radeon. Joder que mareo, hoy NVIDIA, mañana Radeon, hoy GC, mañana HLSL, y sino hazte tu propio compilador de High Level Shaders.

4 - x86 significa menor penalización por branch code (en un principio). Si las caches también aumentan, quizás las "estrategias" de herencia y polimorfismo no penalicen tanto en el performance.
Aun así sigo pensando que las estrategias DOD (Data Oriented Design) seguirán siendo una buena estrategia en general.



En definitiva, parece que será una consola "más fácil" de programar y más parecida a un PC de sobremesa. Decisión que quizás este motivada por la "complicación" extra que presentaba la PS3, y muchos ports de juegos que han dado peor resultado en PS3 que en XBOX360 (aunque la primera sea más "potente", explotar sus caracteristicas requiere mayor conocimientos y más tiempo de desarrollo, normalmente).


Y las tres preguntas al aire por si alguien las quiere recoger:
¿no es esta el área que cubre Microsoft?
¿al final tendremos dos consolas nuevas "practicamente iguales"?
¿esto será bueno o malo ? (para desarrolladores por una parte, por el consumidor por otra)


Un saludo


EDIT: Vale he leido esto en el levante-emv:
CitarPor su parte, la unidad de procesamiento gráfico (GPU) se ha mejorado, principalmente para permitir una utilización más fácil para la computación de propósito general (GPGPU) como la simulación física. La GPU contiene una matriz unificada de 18 unidades de cálculo, que en conjunto generan 1,84 Teraflops de potencia de procesamiento que se pueden aplicar libremente al apartado gráfico, tareas de simulación, o la combinación de los dos.

O sea que retiro lo de que no hay especialización en fisicas, o calculo intensivo, la GPGPU se encargaria de "shadearlo" (por decirlo de alguna manera) todo.
Vicent: Linked-In  ***  ¡¡Ya tengo blog!!






Stratos es un servicio gratuito, cuyos costes se cubren en parte con la publicidad.
Por favor, desactiva el bloqueador de anuncios en esta web para ayudar a que siga adelante.
Muchísimas gracias.