Vaya domingo movidito.
Creo que ya he leído todo, ha habido un par de cosas que me han llamado la atención, si alguien ve algo incorrecto, será un placer debatir:
darksch escribió:La eSRAM no son 32MB, son 32MB + Move Engines, que pronto los quitamos de en medio cuando nos interesa, en la arquitectura va todo junto y será por algo. El render se hace por scanline, es decir no dibujando un triángulo y luego otro, sino que es la 1ª línea horizontal, la 2ª, y así sucesivamente. Por lo tanto se renderiza una línea, y mientras se renderiza otra la anterior puede estar enviándose a la DDR3 por los Move Engines, liberando espacio. Es decir sólo se necesitan en eSRAM las líneas necesarias en el momento. Haciendo espacio también puedes ir metiendo texturas (tan sólo los tiles necesarios del mipmap necesario ahorrando una burrada de memoria), shaders (normalmente ocupan muy poco), etc.
Entonces el proceso sería: hacer un trozo del frame en la eSRAM, que los MoveEngines¿? lo pasen a la RAM (fuera del SoC). Luego quedaría reconstruir la imagen, hacer los postprocesos, volver a meterla al SoC, pasarla al Move Engine del AV Out (supongo que para añadir el audio y generar la señal para el HDMI), volver a sacarla del SoC y ya mandarla al HDMI / SPDIF.
¿Para que pasas ese trozo de imagen por los Move Engines? Ni lo vas a comprimir en jpg, ni obviamente en h.264. Lo que único que necesitarías sería mover esos datos de la eSRAM a la RAM. Y ahí, pregunto, ¿es necesario algún Move Engine?
Si al final vas a tener el frame completo en la RAM ¿porqué no lo haces directamente ahí?
Si quieres hacer el render y el postprocesado tirando de eSRAM, lo más lógico sería tener todo el framebuffer ahí, pero entonces tendrías la eSRAM justita.
Por lo que creo hoy en día y mucho más que antes, los postprocesos se utilizan mucho, muchísimo, y ahí es mejor idea tener el frame completo más los canales adicionales que necesites. ¿Es correcto?
En el artículo que citó alguien hace poco (¿fue Riwer?) :
http://www.anandtech.com/show/6972/xbox ... tation-4/3Son de la opinión que esos 32 MB son suficientes si (y aquí parece ser importante el condicional), repito, si la eSRAM se usa como una especie de caché y se deja el framebuffer en la memoria principal.
Creo que de momento no hay nada oficial sobre para cuál de los dos usos que comentan en ese artículo se utilizaría la eSRAM. ¿Donde se iría guardando el frame (con todos los canales que necesite)? ¿en la RAM o en la eSRAM?
Otra cosa, en un cruce que habéis tenido sobre los tiles, no lo tengo muy claro, pero creo que habláis de "cachos" diferentes. Polyteres se refiere a trozos del frame a renderizar y darksch se refiere a los tiles de las famosas megatexturas. Que ahí tengo una duda ¿no sería más lógico usar para esto la RAM? Si la usas con la eSRAM no tendrías que hacer haciendo trozos demasiado pequeños y estar todo el rato buscando trozo, cogiendo trozo, colocando trozo. En la presentación de AMD sobre esto no recuerdo que usaran eSRAM y partían de una textura en el disco duro de ¿16 GB? Lo que no recuerdo es de qué tamaño eran los trozos que iban usando.
Polyteres escribió:GameSkizzo escribió:Polyteres escribió:No es un patinazo, es mi opinión. Lo digo y lo sigo manteniendo, meter una segunda GPU sería un error, por muchos muchos motivos. Con respecto a lo de la arquitectura GCN 2.0, en ningún momento digo q no tenga ventajas, lo q digo es q lo veo improbable debido a lo q sabemos ya de forma oficial por parte de Microsoft.
Un saludo.
AYYYYYYYYY si lo hiciesen unos que yo me se... todo serían alabanzas...
Por comentarios como el tuyo es por lo que me encantaría que MS diese un golpe en la mesa diciendo que va a llevar dGPU y demostrase por qué vale más que PS4, te digo yo que no se te ve aparecer por aquí en una buena temporada.
Buenas gente. Me seguirás viendo lo mismo. Lo vuelvo a repetir de nuevo de forma cansina: meter una segunda GPU es un error EN MI OPINIÓN. Pero oye q es MI OPINION, y lo seguirá siendo la lleve o no la lleve. Si lo hiciese Sony o Nintendo me seguiría pareciendo un error igual.
Lo único único único q podría llegar a entender seria q montaran un par de CUs enlazadas directamente a uno de los slots q teoricamente quedan sueltos en la APU, con un único ACE y dejando estas CUs peladas para hacer solo tareas de GPGPU mediante DirectCompute y nada mas. Cosa q ya se comento hace mucho mucho tiempo.
Pero q tb sería un error vistos los buses, las velocidades, el mantenimiento de la coherencia con las cachés de la CPU...
Un saludo.
veronica_patricia escribió:o sea que ahora me dices que montar un sistema en un pc en sli o crossfire con 2 targetas graficas es un error,
pues debes de saber tu mas que ningun ingeniero o user que montan pepinos de pc con doble triple o cuadruple gpu en sli
Hmm, no sé, pero siempre que montas un SLI/crossfire, se intenta que todas las GPUs trabajen de la manera más "paralela" posible: GPUs lo más similar posible, con los mismos recursos propios y el mismo acceso al resto de recursos comunes del sistema.
Aquí eso no se cumpliría: GPUs diferentes y una de ellas fuera del SoC, sería complicar las cosas muy mucho.
En un PC montar un SLI no es un error, pero yo sobre todo lo veo útil en varios casos:
-buscas toda la potencia a cualquier precio. No existe ninguna GPU más potente que la suma de las que vas a montar y si quieres lo más bruto, es la única manera. En este caso no importa ni el consumo, ni el calor a disipar ni el precio, por tanto no es viable en consolas.
-partes de un equipo que tiene una gráfica determinada que se ha quedado corta. Puedes quitarla y montar el pepinaco, sin importar el precio, o buscar otra similar a la que tienes y montar un SLI competente por poco dinero.
-tienes que dar salida a multipantalla, habitual con gente y simuladores, usar tres pantallas. Donde una GPU podría ahogarse, un SLI puede ayudar mucho. No es muy aplicable a consolas, ya que el máximo que necesitas ya sabes cuál es: 1920x1080p
-distintos requerimientos: lo meto dentro de SLI , aunque no lo sea realmente. Tener una GPU normalita para cuando no se requiera mucha potencia y una GPU potente para cuanfo haga falta potencia de verdad. Útil en portátiles para que la batería aguante todo lo posible, intentando que la GPU potente esté inactiva la mayor parte del tiempo posible. Una variante de esto es la única construcción lógica que veo en Xbox One, lo explico más adelante.
Respecto a lo de la doble GPU, la verdad es que lo veo bastante absurdo, se han dado varias razones más o menos fundamentadas para que sea así, pero en las dos teorías que he visto, todo pasa porque en el SoC, la información que ha dado Microsoft es incorrecta y en realidad hay más espacio, veamos:
-teoría 1: de misterxmedia, llega a la conclusión de que el SoC en realidad es de aproximadamente 520 mm2. La forma de llegar (bueno, formas,ya que he visto 2) a esa superficie es, cuando menos cuestionable. Esto es ampliable, pero ya me bastante tocho está quedando el post, si alguien tiene curiosidad, me explayo sobre este tema en otro post.
-teoría 2: es cierto que tenemos esos 363mm2 que dice Microsoft pero hay tres capas. Una de ellas, parte del SoC que ha enseñado Microsoft, otra con la eSRAM¿en capas diferentes? y la tercera con nada más y nada menos que una GPU en 22nm (por 28nm del resto del Soc), con arquitectura Volcanic Islands y ¿el triple de procesadores que la GPU del "Main SoC"?. Este SoC tendría un cosumo el solo de alrededor de 250 W ¿? Uf, no sé, pero me suena un tanto extraño todo.
Y aquí ya mi opinión: podría ser como dice Polyteres un par de CUs con algo más para GPGU, pero lo dudo. ¿Realmente queda espacio para eso en el SoC? ¿Si quedara espacio, lo lógico no hubiera sido poner una GPU más grande, con más CUs?
Otra posibilidad: la segunda GPU no se utiliza para potenciar la GPU del SoC, es decir no funcionaría como un SLI/Crossfire. Esa segunda GPU sería solo para el, por llamarle de alguna manera, consoleOS. Una GPU muy sencilla, con muy pocos recursos y consumo para mover interfaz, apps, etc.
El problema es una vez más donde iría, en el SoC no parece que haya sitio. Podría ir fuera, ya que no necesitaría grandes velocidades ni recursos, es raro que tuviera que hacer renders, trandformaciones 3D, etc. Pero sí debería tener acceso a los move engine. Sobre todo codificación y decodificación de vídeo y compresión, para los temas de edición de vídeo, skype, navegador, etc. Además en la foto de la placa que puso wired (aunque es un devkit), alguien la hubiera visto y dicho algo.
En cualquier caso, veo muy improbable que lleve una segunda GPU, por no decir prácticamente imposible.
En cuanto a que la GPU mostrada sea Volcanic Islands, puede ser pero lo veo difícil. Además ¿importaría mucho? Quiero decir: vale, sería más eficiente, podría hacer alguna cosa más por hardware, pero lo importante para estas estúpidas guerras de foros ya lo han dicho: los teraflops....
Bueno, perdón por el tochaco que me ha quedado al final, que quede claro que mucho de lo escrito no es más que mi opinión. Si alguien se ha leído hasta aquí, enhorabuena, y si quiere discutir algo de lo que he dicho, muchas gracias.
Saludos