Hablemos del interior de Xbox One

.
Editado por ahona. Razón: Offtopic
SNK2 escribió:Ok, porque las review se empeñaban en compararlas, y cuando salio la 7790 decian que era la elegida por Microsoft.

Vamos y si buscas lo siguen diciendo: Xbox One --> 7790 Ps4--> 7850


Pero eso lo han hecho los que no tienen ni idea.
Hookun escribió:Obviamos los DMES adrede,la esram,los 4 commands processors (que solo EXISTE UNO por GPU en PC y otras),el dual pipe por hardware y la disposición y tamaño de las ALUs y ya esta, ya tenemos la GPU del "porque yo lo valgo".Cada día aparecen nuevos arquitectos de One en todos foros.Menos mal que firmasteis un contrato de NDA...
Vamos a hacer un pequeño repaso para los nuevos:
Aceleración DX11.2 y 11.3 por hardware:Bonaire y refritos no soportan dicha aceleración por hardware y es por software así que ya esta fuera de esa ecuacion.
Tier 3.0: Seguimos mas fuera de la ecuación con Bonaire y sus "amigas" refritos.
PTR hasta 3.0 : Tampoco están bajo esas GPUs solo llegando a la versión 2.0 por software.
Aceleración "full" DX12: Ninguna GPU actual de AMD tiene la característica de aceleración por "hardware".
Continuemos:
Los compute shaders no necesitan de ROPs gracias a la esram.
Capacidad simultánea de lectura de ddr y esram.
Vamos yo veo que es igual a cualquier GPU de PC no?!!....
En fin cada loco a su tema


Revisa tus funtes y googlea un poquito y veras que las cpus Bonaire son Dx 11.2 Los compite shader llevan existiendo si no me falla la memoria desde la 11.1 o incluso desde la 11.0. Las PRT son 11.2 luego Bonaire las soporta. La única cosa que en teoría no soporta Bonaire es Dx12 por hardware. En teoría solo lo soporta a nivel de la optimización de cpu. Que ventajas a nivel de rendering aportara Dx12 apenas se han esbozado pero todo lo demás es compatible con dicha arquitectura. La gpu de ps4 y xbo de base se basan en gpus de pc. Porque todas las cpus de consola que ha fabricado amd se basan en diseños de pc. Con mas o menos modificaciones. Y no estoy de acuerdo con una afirmación anterior de que una consola es una consola y un pc es un pc... Eso lo podíamos decir antes. Pero estas consolas son 90% tecnología pc incluso hasta sus sistemas operativos se basan en s.o. De pc. Para bien o para mal (en mi opinión para muy bien) esto es así y no debería de ser algo que genere malestar todo lo contrario. El problema de las consolas no es que sean pcs es que son poco potentes y malgastan muchísimos recursos en cosas accesorias que las hacen aun menos eficientes que hardware similar en pc.
Yo no estoy de acuerdo en q sean poco potentes. Tiende a pensar así la gente q por lo general es "PCera".

Se hace una comparación rápida y te das cuenta q efectivamente una 780 o un i7 son mucho más potentes q una Xbox One.

Al menos en potencia bruta. Y aquí es donde esta el quid de la cuestión.

¿Realmente se aprovecha la potencia de un i7 y una 780? No.

Programar juegos q aprovechen TODA la potencia de esos equipos y expriman hasta su última gota es inviable desde un punto de vista económico. Hace tiempo q el hardware esta por encima del software. En CPUs ya está demostrado q tienen potencia de sobra y su evolución se centra principalmente en mejorar el consumo energético.

Veremos juegos increíbles en Xbox One. Pero no serán los q son ports de PC.
Bueno, yo no suelo hablar mucho por aquí porque no tengo grandes conocimientos pero, por lo que veo (y por la noticia en portada de PS4), las consolas de hoy día están muy limitadas por la CPU. Y aquí va la pregunta: ¿Sería descabellado pensar que Microsoft vuelva a hacer overclock en la CPU? ¿Llegar a los 1.9 - 2.0 GHz?. Dado el gran ventilador que posee, dudo que el calor sea un problema. ¿Se notaría así una diferencia en el rendimiento de los juegos venideros?
Por ruido a tanto no creo que la suban.

Por otra parte Bonaire podrá ser el DX que quiera, pero Bonaire + hardware específico de M$ ya puede ser el DX que se le antoje también.

La arquitectura de XOne con la de PC se parecen en...en..que tienen bits y están hechas de silicio. Es que si nos ponemos así un Spectrum es lo mismo que una arcade, porque llevaban un Z80. A partir de componentes base, que es algo muy remotamente parecido a una arquitectura, se pueden crear muchas arquitecturas de sistema distintas.
http://gamingbolt.com/directx-12-and-ma ... directx-11

DirectX 12 And Mantle Have Draw Call Performance of 7.5 Times of DirectX 11


Yo no entiendo mucho de estos temas pero creo que es interesante para los que controlais esto
Seria interesante si no fuera por que Xbox One ya tiene su propio api de bajo nivel que no es directx12.
jose1024 escribió:Seria interesante si no fuera por que Xbox One ya tiene su propio api de bajo nivel que no es directx12.


¿Puedes darnos más información sobre esa API "close to metal" y como se trabaja con ella, por favor?
Seguro que ya se puso por aquí en su momento pero para recordárselo a los cansinos como @jose1024 . Es de una entrevista de digital foundry a un dev del Metro, que sabrá bastante mas de esto que cualquiera que postee por aquí, por mucho que sepa del tema como @Polyteres

DF vs Oles Shishkovstov escribió:Digital Foundry: DirectX 11 vs GNMX vs GNM - what's your take on the strengths and weakness of the APIs available to developers with Xbox One and PlayStation 4? Closer to launch there were some complaints about XO driver performance and CPU overhead on GNMX.

Oles Shishkovstov: Let's put it that way - we have seen scenarios where a single CPU core was fully loaded just by issuing draw-calls on Xbox One (and that's surely on the 'mono' driver with several fast-path calls utilised). Then, the same scenario on PS4, it was actually difficult to find those draw-calls in the profile graphs, because they are using almost no time and are barely visible as a result.

In general - I don't really get why they choose DX11 as a starting point for the console. It's a console! Why care about some legacy stuff at all? On PS4, most GPU commands are just a few DWORDs written into the command buffer, let's say just a few CPU clock cycles. On Xbox One it easily could be one million times slower because of all the bookkeeping the API does.

But Microsoft is not sleeping, really. Each XDK that has been released both before and after the Xbox One launch has brought faster and faster draw-calls to the table. They added tons of features just to work around limitations of the DX11 API model. They even made a DX12/GNM style do-it-yourself API available - although we didn't ship with it on Redux due to time constraints."

And then he further explained how important DX12 is:

"Oles Shishkovstov: Aside from them being much more close to the (modern) metal, those APIs are a paradigm-shift in API design. DX11 was 'I will keep track of everything for you'. DX12 says 'now it's your responsibility' - so it could be a much thinner layer. As for Mantle, it is a temporary API, in my honest opinion.

Digital Foundry: To what extent will DX12 prove useful on Xbox One? Isn't there already a low CPU overhead there in addressing the GPU?

Oles Shishkovstov: No, it's important. All the dependency tracking takes a huge slice of CPU power. And if we are talking about the multi-threaded command buffer chunks generation - the DX11 model was essentially a 'flop', while DX12 should be the right one.


http://www.eurogamer.net/articles/digit ... tform-game

Ahora a seguir repitiendo, DX12 no servirá para nada, es solo para PC.
La cuestión es, ¿Quien trabaja con esa API close to metal? Porq m parece a mí, q quitando los 4 juegos exclusivos de turno, no la usa nadie.

Alien insolation llega a 60 fps de media con una 7790. ¿Como es posible q tanto Xbox, como Ps4 les cueste llegar a 30fps en ese juego? CPU bound.

Dx12 en juegos multiplataforma, permitirá darle un impulso a la CPU en el peor de los casos.

Para ports rápidos PC a consola, One usa la API Dx11 vanilla. La cual, no es especialmente potente.

http://www.redgamingtech.com/inside-xbo ... al-part-1/

El compartir API Dx12 con PC, es una ventaja si o si.
Solo hay q ver las diferencias entre los exclusivos y los multis para darse cuenta de la diferencia de rendimiento en esta maquina.
@Szasz es algo que comenté también por este hilo sabe dios cuando (o en el de juegos nextgen de multiplataforma no recuerdo). El dx12 no solo mejorará el rendimiento sino que será una colleja a sony ya que seguramente se convierta en la API de facto para casi todos los desarrollos multiplataforma, ya que harán una versión en común para PC/XB1 y después port a PS4, y la ligera ventaja en GPU de la consola de sony dudo mucho que haga tener una mejor versión, y la hostia que se van a pegar los que viven en la nube de sony va ser tan bonita que ríete del AC Unity y su paridad.
En la entrevista que hacen los de Digital Foundry al desarrollador de Metro Redux cuentan que ya hay una Api de bajo nivel para Xbox One pero que les ha llegado con el juego muy desarrollado y que no han podido, alude a cuestiones de tiempo, a utilizarla.

De todos modos paso de discutir este tema, si alguien piensa que un hardware cerrado como el de consola usa una Api multi hardware como es Directx para algo mas que salir del paso, que viene a ser lo que ha pasado con algunos juegos de Xbox One y Directx11 de inicio, me parece bien.
Buenas gente. Que un juego sea CPU-bound no tiene pq deberse a una sobrecarga en las llamadas a la API gráfica, generalmente se debe sobre todo al resto de tareas que se tienen que ejecutar. Con las APIs que se manejan en consola a bajo nivel (ambas), este problema está en parte subsanado. Por otro lado tienes formas de solventar este problema bien sea agrupando las llamadas en batch (dinámicos/estáticos), usando instanciación donde se permita, o por supuesto usando indirect draw donde puedes generar/enviar llamadas a la GPU sin intervención de la CPU, es la misma GPU la que se lo guisa y se lo come. Lo q he dicho muchas veces, la ingeniería está para esto, para solucionar los problemas que se van presentando, y las herramientas están para facilitar el trabajo. Obviamente cuanto más fáciles nos pongan las cosas, mas felices seremos [360º] .

Por otro lado, tener la posibilidad de hacer más llamadas y por tanto enviar más trabajo a la gráfica, no te garantiza que esta pueda hacer dicho trabajo. Es como un peaje, puedes tener 4 carriles por donde llegan coches pero si al final tienes solo 2 cabinas para pagar...no podrás dejar pasar mas que 2 coches a la vez, aunq lleguen 4 coches.

Un saludo.
jose1024 escribió:En la entrevista que hacen los de Digital Foundry al desarrollador de Metro Redux cuentan que ya hay una Api de bajo nivel para Xbox One pero que les ha llegado con el juego muy desarrollado y que no han podido, alude a cuestiones de tiempo, a utilizarla.

De todos modos paso de discutir este tema, si alguien piensa que un hardware cerrado como el de consola usa una Api multi hardware como es Directx para algo mas que salir del paso, que viene a ser lo que ha pasado con algunos juegos de Xbox One y Directx11 de inicio, me parece bien.


¿Por favor, puedes quotear esa parte de la entrevista que mencionas para que la leamos todos? A ver si puedes darnos más información sobre sea API "close to metal" que ya está disponible en Xbox One :)
theogre escribió:
jose1024 escribió:En la entrevista que hacen los de Digital Foundry al desarrollador de Metro Redux cuentan que ya hay una Api de bajo nivel para Xbox One pero que les ha llegado con el juego muy desarrollado y que no han podido, alude a cuestiones de tiempo, a utilizarla.

De todos modos paso de discutir este tema, si alguien piensa que un hardware cerrado como el de consola usa una Api multi hardware como es Directx para algo mas que salir del paso, que viene a ser lo que ha pasado con algunos juegos de Xbox One y Directx11 de inicio, me parece bien.


¿Por favor, puedes quotear esa parte de la entrevista que mencionas para que la leamos todos? A ver si puedes darnos más información sobre sea API "close to metal" que ya está disponible en Xbox One :)


Buenas gente. Lo tienes en la página anterior:

But Microsoft is not sleeping, really. Each SDK that has been released both before and after the Xbox One launch has brought faster and faster draw-calls to the table. They added tons of features just to work around limitations of the DX11 API model. They even made a DX12/GNM style do-it-yourself API available - although we didn't ship with it on Redux due to time constraints."


Un saludo.
Polyteres escribió:
theogre escribió:
jose1024 escribió:En la entrevista que hacen los de Digital Foundry al desarrollador de Metro Redux cuentan que ya hay una Api de bajo nivel para Xbox One pero que les ha llegado con el juego muy desarrollado y que no han podido, alude a cuestiones de tiempo, a utilizarla.

De todos modos paso de discutir este tema, si alguien piensa que un hardware cerrado como el de consola usa una Api multi hardware como es Directx para algo mas que salir del paso, que viene a ser lo que ha pasado con algunos juegos de Xbox One y Directx11 de inicio, me parece bien.


¿Por favor, puedes quotear esa parte de la entrevista que mencionas para que la leamos todos? A ver si puedes darnos más información sobre sea API "close to metal" que ya está disponible en Xbox One :)


Buenas gente. Lo tienes en la página anterior:

But Microsoft is not sleeping, really. Each SDK that has been released both before and after the Xbox One launch has brought faster and faster draw-calls to the table. They added tons of features just to work around limitations of the DX11 API model. They even made a DX12/GNM style do-it-yourself API available - although we didn't ship with it on Redux due to time constraints."


Un saludo.


¿Podrías explicar esta parte "They even made a DX12/GNM style do-it-yourself API available", por favor?
theogre escribió:¿Podrías explicar esta parte "They even made a DX12/GNM style do-it-yourself API available", por favor?


Buenas gente. Realmente la frase es bastante explícita de por sí xD, asiq poco hay que aclarar. Ms ya proporciona una API de bajo nivel al estilo de DirectX12 y GNM (la API de bajo nivel que usa Ps4. Tb usa otra muy similar a DirectX 11 llamada GNMX).

El concepto de "bajo nivel" referido a una API gráfica, es diferente al que se tiene de forma generalista por ejemplo cuando nos referimos a programar a bajo nivel una CPU, no quiere decir que se baje a nivel ensamblador (antes en DirectX9 y en OpenGL si podías escribir una especie de bytecode en ensamblador pero en versiones posteriores esta posibilidad se eliminó, aunq bueno en una consola al ser un hardware cerrado e inmutable si tiene sentido...). DirectX/OpenGL manejan y por tanto "ocultan" en cierto modo (a la par que facilitan) ciertas tareas de las que el programador no se tiene q preocupar, por ejemplo la gestión de memoria de la GPU, ciertos elementos de sincronización, escritura en el ring-buffer, cosas que ocurren en el driver...

Todo esto por supuesto tiene asociadas ventajas e inconvenientes. Ventajas?. Facilita mucho el uso de la API. Inconvenientes: resta flexibilidad y aumenta como es lógico el overhead. Lo q hacen las APIs de bajo nivel de consolas (y se espera que tb lo hagan futuras versiones de DirectX/OpenGL) es dejar todas estas tareas en manos del programador, difuminando la linea entre API y driver (obviamente debido a las características de una consola estas APIs específicas permiten bajar incluso más permitiendo un control de hardware/driver mas directo). Esto dificulta la programación, Ms lo sabe y por eso se ha sacado de la manga DirectX 11.3, que da soporte a las nuevas características de hardware como por ejemplo multiple viewport rendered o convservative raster pero sin dejar que sea el programador quien se encargue de esas tareas de bajo nivel que he comentado antes.

Un saludo.
@jose1024 vamos que tu de toda la entrevista solo te quedas con esa linea no? Mira que tenéis lectura selectiva xD. Y más cuando lo que viene a decir es que de momento han hecho un "apaño" para convertir la pésima API actual para hacerla "to the metal" (que habría que ver hasta que punto es 100% "to the metal"), o por lo menos es como lo interpreto yo.

@Polyteres me encanta cuando hablas como si supieras lo que lleva y no lleva dx12. Pero si te leyeses la entrevista se asume que dx12 no solo reducirá el overhead sino que el dev del metro da por hecho que habrá cambios en los paradigmas de programación (y cualquiera que tenga dos dedos de frente lo deduce por haber un NDA), por no mencionar obviamente nuevos efectos que segurísimo traerá, así como el incentivo que supone para programar como máquina principal la XB1 y PC y portear al resto. Vamos que como parece que curras en esto supongo que en un par de años te tendrás empollados estos nuevos paradigmas y ya podrás actualizar el discurso para demostrar tus conocimientos ante el foro, que al final es lo que hacen los desarrolladores, aprender las cosas que "van apareciendo", el problema es cuando los árboles te impiden ver el bosque ;).
marjalone está baneado por "Saltarse el ban con un clon"
Digital Foundry : ¿Cuál es su opinión sobre DirectX 12 y Manto? ¿Es todo sobre la fabricación de empate el desarrollo de juegos de PC en forma más estrecha con Xbox One y PlayStation 4?

Oles Shishkovstov : Aparte de ellos siendo mucho más cerca al metal (moderna), las API son un cambio de paradigma en el diseño de la API. DX11 era "Voy a llevar un registro de todo para usted '. DX12 dice 'ahora es su responsabilidad "- por lo que podría ser una capa mucho más delgada. En cuanto a Mantle, que es un API temporal, en mi opinión sincera.

Digital Foundry : ¿En qué medida DX12 resultar útil en Xbox Uno? ¿No existe ya un bajo costo operativo de la CPU no hacer frente a la GPU?

Oles Shishkovstov : No, es importante. Todo el seguimiento de la dependencia tiene una enorme rebanada de energía de la CPU. Y si estamos hablando de la multi-hilo comando trozos de amortiguamiento generación - el modelo DX11 era esencialmente un 'fracaso', mientras DX12 debe ser la correcta.
Por Dios esa traducción da miedo...xD
La API exclusiva close no la usa ni el tato salvo los juegos muy exclusivos que al no tener que portarlos se lo pueden permitir.

El CPU-bound el problema de la API es que el simple hecho de que si te quita CPU por llamadas a la API, pues eso que te quita incluso para tareas no de API. Es una merma de CPU de vea por donde se vea. Ya si encima se satura el único nucleo que las gestiona, pues la cagamos.
darksch escribió:La API exclusiva close no la usa ni el tato salvo los juegos muy exclusivos que al no tener que portarlos se lo pueden permitir.

El CPU-bound el problema de la API es que el simple hecho de que si te quita CPU por llamadas a la API, pues eso que te quita incluso para tareas no de API. Es una merma de CPU de vea por donde se vea. Ya si encima se satura el único nucleo que las gestiona, pues la cagamos.


THIS.
Panorama actual en multis: desarrollo en PC en DX 11.x. Port a One vía DX 11.x y a PS4 vía GNMX
Panorama futuro en multis: desarrollo en PC en DX 12 y port a One vía DX 12. O bien desarrollo en PC y port a One vía DX 11.3.
KinderRey escribió:THIS.
Panorama actual en multis: desarrollo en PC en DX 11.x. Port a One vía DX 11.x y a PS4 vía GNMX
Panorama futuro en multis: desarrollo en PC en DX 12 y port a One vía DX 12. O bien desarrollo en PC y port a One vía DX 11.3.

Por mucho que se repita una mentira no se hará una verdad , los juegos no se desarrollan en pc con dx x.x y después se portan a consola , los juegos se desarrollan con motores gráficos que son compatibles con distintas api , http://es.m.wikipedia.org/wiki/Unreal_Engine
Pada escribió:@Polyteres me encanta cuando hablas como si supieras lo que lleva y no lleva dx12. Pero si te leyeses la entrevista se asume que dx12 no solo reducirá el overhead sino que el dev del metro da por hecho que habrá cambios en los paradigmas de programación (y cualquiera que tenga dos dedos de frente lo deduce por haber un NDA), por no mencionar obviamente nuevos efectos que segurísimo traerá, así como el incentivo que supone para programar como máquina principal la XB1 y PC y portear al resto. Vamos que como parece que curras en esto supongo que en un par de años te tendrás empollados estos nuevos paradigmas y ya podrás actualizar el discurso para demostrar tus conocimientos ante el foro, que al final es lo que hacen los desarrolladores, aprender las cosas que "van apareciendo", el problema es cuando los árboles te impiden ver el bosque ;).


Buenas gente. Y a mi me encanta ver vídeos de gaticos en Youtube haciendo cosas graciosas. Me he leído la entrevista varias veces y se lo q dice, tan solo respondo expresamente a una pregunta hecha por un usuario de este foro.

Por otro lado, hablo de lo q lleva DirectX12 por lo q han dicho los propios desarrolladores de Microsoft (Andrew Lauritzen y Max McMullen no hay mejor fuente), lo cual es de dominio público y tu mismo lo puedes consultar. Un poco de conocimiento sobre el tema es suficiente para saber que se está desarrollando, hacia donde va DirectX12 y que cosas va a traer la nueva API (yo no me saco nada de la manga). Todo tuyo:

https://forum.beyond3d.com/threads/dire ... iew.55653/

Sacados de ese mismo hilo, estos enlaces de Intel son bastante buenos y explican muy bien por donde va a ir la API:

https://software.intel.com/en-us/blogs/ ... -the-metal
https://software.intel.com/en-us/blogs/ ... ate-object
https://software.intel.com/en-us/blogs/ ... ce-binding
https://software.intel.com/en-us/blogs/ ... and-tables
https://software.intel.com/en-us/blogs/ ... -5-bundles
https://software.intel.com/en-us/blogs/ ... mand-lists
https://software.intel.com/en-us/blogs/ ... amic-heaps
https://software.intel.com/en-us/blogs/ ... arallelism

Un saludo.
nanoxxl escribió:
KinderRey escribió:THIS.
Panorama actual en multis: desarrollo en PC en DX 11.x. Port a One vía DX 11.x y a PS4 vía GNMX
Panorama futuro en multis: desarrollo en PC en DX 12 y port a One vía DX 12. O bien desarrollo en PC y port a One vía DX 11.3.

Por mucho que se repita una mentira no se hará una verdad , los juegos no se desarrollan en pc con dx x.x y después se portan a consola , los juegos se desarrollan con motores gráficos que son compatibles con distintas api , http://es.m.wikipedia.org/wiki/Unreal_Engine


La compatibilidad del middleware con distintas API ayuda, es evidente, pero eso no resta veracidad a mi afirmación. Es este inicio de generación, el PC es la plataforma referente para multis, y las consolas reciben ports. Que tu middleware tenga una versión para la API de la consola X facilita las cosas, pero seguirás con la necesidad de hacer cosas fundamentales como realizar las reasignaciones de memoria de forma correcta, entre muchas otras. No es recompilar y a correr, como tú indicas. Así que no se trata de decir mentiras o verdades, sino de hablar con conocimiento.

Y actualmente, según tengo entendido por algunas personas con las que hablo muy de vez en cuando, mientras que hacer una transición de GNMX a GNM es relativamente sencillo, en el caso de One no es tan fácil bajar a esos niveles, por lo menos no lo era hasta hace relativamente poco tiempo. Desde luego DX12 ayudará aún más en ese proceso y -en mi opinión- ayudará a que PC siga siendo la plataforma referente.
KinderRey escribió:La compatibilidad del middleware con distintas API ayuda, es evidente, pero eso no resta veracidad a mi afirmación. Es este inicio de generación, el PC es la plataforma referente para multis, y las consolas reciben ports. Que tu middleware tenga una versión para la API de la consola X facilita las cosas, pero seguirás con la necesidad de hacer cosas fundamentales como realizar las reasignaciones de memoria de forma correcta, entre muchas otras. No es recompilar y a correr, como tú indicas. Así que no se trata de decir mentiras o verdades, sino de hablar con conocimiento.

Y actualmente, según tengo entendido por algunas personas con las que hablo muy de vez en cuando, mientras que hacer una transición de GNMX a GNM es relativamente sencillo, en el caso de One no es tan fácil bajar a esos niveles, por lo menos no lo era hasta hace relativamente poco tiempo. Desde luego DX12 ayudará aún más en ese proceso y -en mi opinión- ayudará a que PC siga siendo la plataforma referente.

Pc el referente y los demás port , hablar con conocimiento ....
No hace falta inventarse las cosas para decir lo mucho que mola el dx12 ....
Si @Polyteres ya se que hace unos meses salio un resumen de algunas novedades. Pero esperemos a ver la película completa y no juzguemos por el tráiler.
nanoxxl escribió:
KinderRey escribió:La compatibilidad del middleware con distintas API ayuda, es evidente, pero eso no resta veracidad a mi afirmación. Es este inicio de generación, el PC es la plataforma referente para multis, y las consolas reciben ports. Que tu middleware tenga una versión para la API de la consola X facilita las cosas, pero seguirás con la necesidad de hacer cosas fundamentales como realizar las reasignaciones de memoria de forma correcta, entre muchas otras. No es recompilar y a correr, como tú indicas. Así que no se trata de decir mentiras o verdades, sino de hablar con conocimiento.

Y actualmente, según tengo entendido por algunas personas con las que hablo muy de vez en cuando, mientras que hacer una transición de GNMX a GNM es relativamente sencillo, en el caso de One no es tan fácil bajar a esos niveles, por lo menos no lo era hasta hace relativamente poco tiempo. Desde luego DX12 ayudará aún más en ese proceso y -en mi opinión- ayudará a que PC siga siendo la plataforma referente.

Pc el referente y los demás port , hablar con conocimiento ....
No hace falta inventarse las cosas para decir lo mucho que mola el dx12 ....


No se ha inventado nada.

Cuando salga DX12 los juegos de pc (mas tarde mas temprano) usarán DX12. Siempre ha sido así... Y más si las ventajas con respecto a dx11 son sustanciales (más facilidad en el balanceado del multihilo).
Cuando usen DX12, para hacer el port a xbox one no tendrán que hacer un port como ahora de Dx11 a la api pseudo dx12 de Xbox one. Se hará de forma mucho mas directa dx12 ->dx12 de xbox, con su correspondiente mejora de eficacia en el codigo(al compartir la misma base).Si no piensas así andas muy perdido.
Más facilidad en el port, menos dinero invertido, más tiempo para mejorar el juego close to the metal.

Por algo meten tantas horas de trabajo para hacer que las middelwares soporten perfectamente las nuevas Api.
De hecho Lionhead está aportando agunas cosillas al motor de Unreal Engine.
Directx12 nunca sera de bajo nivel por pura definicion, es una api multi hardware, tiene que tener un cierto nivel de abstraccion e independencia del hard sobre el que corra.

Por mucho que Directx12 mejore el uso del cpu y esto pueda ser trasladado a la api de Xbox One esta seguira teniendo una cpu chustera y una gpu de gama media baja, lo que no quita que gracias a trabajar "close to metal" conseguira unos rendimientos muy altos, aprovechando sus virtudes y salvando sus carencias, entra esas virtudes estaran cosas como los motores de movimiento para gpgpu, la coherencia de caches que tambien se usara para gpgpu y otros posibles usos que pueda tener la esram con su escritura y lectura simultanea y su baja latencia, otras partes o esas mismas del hardware son para kinect, por mucho que guste olvidar tu integracion en el diseño de la apu al igual que el "sistema operativo" y la funcion acoplar.

Son los ingenieros y programadores de Microsoft los que estan trabajando con esa api para que los pocos recursos que dispone un hardware diseñado con unas cuantas ideas en mente ademas de correr videojuegos puedan ser aprovechados al 100%.

No hay que olvidar que la consola consume entre 110-120 vatios en total y se penso como una hardware y software multimedia con la capacidad de saltar entre aplicaciones, con kinect totalmente integrado y que ademas fuera una plataforma de videojuegos.

Mi opinion personal aunque pueda parecer lo contrario es que si bien erraron un poco al principio hoy por hoy lo estan bordando.
eloskuro escribió:No se ha inventado nada.

Si lo hace , cuando dice que los juegos salen en pc y después se portan a consola , eso es mentira , y los api son herramientas , no se saca un juego para dx , se hace un juego con el soporte de dx , tienes ejemplo como en tomb raider que la versión de pc y ps4 lo hizo un grupo , la versión de xboxone otro grupo distinto , dx12 no es único , la propia amd a dicho que los resultados de mantle y dx12 son muy iguales , AMD no sabe nada del dx12 ?
Dx12 traerá mejoras , pero no milagros y los juegos no se programan solos con dx12 , se utilizan variad herramientas y una de ellas son los api
nanoxxl escribió:
eloskuro escribió:No se ha inventado nada.

Si lo hace , cuando dice que los juegos salen en pc y después se portan a consola , eso es mentira , y los api son herramientas , no se saca un juego para dx , se hace un juego con el soporte de dx , tienes ejemplo como en tomb raider que la versión de pc y ps4 lo hizo un grupo , la versión de xboxone otro grupo distinto , dx12 no es único , la propia amd a dicho que los resultados de mantle y dx12 son muy iguales , AMD no sabe nada del dx12 ?
Dx12 traerá mejoras , pero no milagros y los juegos no se programan solos con dx12 , se utilizan variad herramientas y una de ellas son los api


Claro por que las compañías prefieren hacer 3 grupos de trabajo y gastar el triple de dinero que desarrollarlo sobre DX12 hacer un port directo a One y que ps4 se coma un cutreport..

Para juegos tripe AAA con mucho presupuesto vale, pero para el 90% restate ya lo veras.

Por tu forma de hablar de las apis realmente pieno que no sabes que son.. Sabes que no es mas que una biblioteca de comandos verdad?
Pues DX12 es una API que ofrece acceso a bajo nivel. Es que el bajo nivel hoy en día no es como antes programar en ensamblador, es poder acceder a ciertas características del hardware que a un nivel de abstracción mayor, en el cual se diluyen las particularidades del hardware, no se tiene acceso.

La idea es simple, poder programar en una API estándar y, para ciertas cosas que dependen mucho su rendimiento de algún aspecto particular del hardware, poder tener acceso y usarlo adecuadamente en cada plataforma. Un claro ejemplo son los CS donde una "tontería" en aspectos de sincronización de memoria puede suponer un gran impacto en el rendimiento de su ejecución.

Un claro ejemplo lo vimos hace poco, en las pruebas de Ubisoft, y la optimización del código en PS4. No cogieron e hicieron el bechmark en ensamblador de PS4, sino que hicieron uso de la característica de sincronización de memoria de PS4 y se ganó un gran rendimiento en el CS.

DX11 no tiene acceso a esas particularidades del hardware, mientras que DX12 si las tendría. En PS4 es sencillo, puedes programar en GNMX a alto nivel, y luego para optimizar algunas partes las portas a GNM. En XOne eso no es posible porque son 2 API totalmente diferentes.

La referencia para programar siempre será el PC, porque es más barato (puedes usarlo aún sin licencia de un SDK, en todos los equipos que quieras), inmediato, y directo (compilar y depurar en la misma máquina sin añadidos ni consolas developer). Por eso es importante tener una API en consola que se corresponda con una de PC, porque los motores se curran en PC y luego se portan, y optimizan, a consola. Si tenemos una API que no comparte nada con PC pues es más jodido.
salocin21 escribió:Claro por que las compañías prefieren hacer 3 grupos de trabajo y gastar el triple de dinero que desarrollarlo sobre DX12 hacer un port directo a One y que ps4 se coma un cutreport..

Para juegos tripe AAA con mucho presupuesto vale, pero para el 90% restate ya lo veras.

Por tu forma de hablar de las apis realmente pieno que no sabes que son.. Sabes que no es mas que una biblioteca de comandos verdad?

El dx12 es un api , solo con un api no puedes hacer un juego , la herramienta principal es el motor grafico , tu puedes usar el un unreal engine y crear un juego para pc , xboxone y ps4 , una parte comun y otra parte especifica donde se usan las api para optimizar el juego según la plataforma , pero la herramienta principal y común es el motor grafico , el api es una de las muchas herramientas dentro del propio motor grafico
darksch escribió:DX11 no tiene acceso a esas particularidades del hardware, mientras que DX12 si las tendría. En PS4 es sencillo, puedes programar en GNMX a alto nivel, y luego para optimizar algunas partes las portas a GNM. En XOne eso no es posible porque son 2 API totalmente diferentes.

Muy interesante !!!!

Segun pareto eso haría que se pudiese conseguir una optimización equivalente al 80% de algo hecho con el API de bajo nivel, con el 20% de trabajo de lo que sunpondria haberlo hecho en bajo nivel. [+risas] [carcajad]

Y manteniendo bastante mas portabilidad en los titulos.
Yo por lo que tengo entendido, Xbox One tiene una api para trabajar a bajo nivel.

El tema es que es dificil trabajar con esa api y se supone que con directx12 será más fácil, lo que viene siendo a que si ahora vemos cosas chulas en los exclusivos, luego los veremos en todos los juegos.
Nuhar escribió:Yo por lo que tengo entendido, Xbox One tiene una api para trabajar a bajo nivel.

El tema es que es dificil trabajar con esa api y se supone que con directx12 será más fácil, lo que viene siendo a que si ahora vemos cosas chulas en los exclusivos, luego los veremos en todos los juegos.


La cuestión sobre todo son los multi. Ya hemos visto como se las gastan los juegos First Party. Los ports multis que nos llegan son D3D11.x
Cuando el codigo sea en base D3D12 el aprovechamiento de ese codigo será mayor.

Como dije antes: Más facilidad de port = Menos dinero = Más tiempo para depurar y mejorar a bajo nivel.

Recordar las palabras de Phil Spencer.

Imagen

DX12 tendrá impacto en la Xbox One con los juegos escritos para DX12. Algunas funciones están ya en Xbox One, pero el DX12 al completo llegará.


fuente primaria marca acme
eloskuro escribió:Recordar las palabras de Phil Spencer.

Imagen

DX12 tendrá impacto en la Xbox One con los juegos escritos para DX12. Algunas funciones están ya en Xbox One, pero el DX12 al completo llegará.


fuente primaria marca acme

Memoria selectiva , tambia dijo el mismo Phil Spencer que ( Esto ayudará a los desarrolladores de Xbox One. No va a ser un gran cambio, pero se desbloqueará más capacidad para los desarrolladores. )
Yo me leeria la ultima entrevista al respecto, creo que es bastante claro.

No es un gran cambio COMO ALGUNOS APUNTAN (misterxmedia entre otros), pero logicamente pasar a una API nueva tiene cambios, a mejor.

No creo que haya que irse al blanco o al negro, el gris es un bonito color. Habrá que ver si es gris claro o gris oscuro... yo creo que será un gris clarito.
Nuhar escribió:Yo me leeria la ultima entrevista al respecto, creo que es bastante claro.

No es un gran cambio COMO ALGUNOS APUNTAN (misterxmedia entre otros), pero logicamente pasar a una API nueva tiene cambios, a mejor.

No creo que haya que irse al blanco o al negro, el gris es un bonito color. Habrá que ver si es gris claro o gris oscuro... yo creo que será un gris clarito.


Estoy con Nuhar. Yo solo estoy diciendo que hay aprovecamiento de codigo al ser un port más directo, y que hay funciones nuevas que aún no tiene la XBO en su API

Eso es lo que sacamos en claro. Que es mucho o poco ese rendimiento más no lo sabemos. Por las palabras de Phil Spencer podemos entender que no es un 2x o un 3x como se apuntan en algunas webs, pero hay mejora :P
Lo voy a simplificar, DX12 permitirá hacer en DX lo que ahora se puede hacer con la API exclusiva.
darksch escribió:La idea es simple, poder programar en una API estándar y, para ciertas cosas que dependen mucho su rendimiento de algún aspecto particular del hardware, poder tener acceso y usarlo adecuadamente en cada plataforma. Un claro ejemplo son los CS donde una "tontería" en aspectos de sincronización de memoria puede suponer un gran impacto en el rendimiento de su ejecución.

Un claro ejemplo lo vimos hace poco, en las pruebas de Ubisoft, y la optimización del código en PS4. No cogieron e hicieron el bechmark en ensamblador de PS4, sino que hicieron uso de la característica de sincronización de memoria de PS4 y se ganó un gran rendimiento en el CS.

DX11 no tiene acceso a esas particularidades del hardware, mientras que DX12 si las tendría. En PS4 es sencillo, puedes programar en GNMX a alto nivel, y luego para optimizar algunas partes las portas a GNM. En XOne eso no es posible porque son 2 API totalmente diferentes.


Buenas gente. Por suerte o por desgracia no puedes hacer esto con esta API y esto con la nueva otra, si la usas la tienes q usar entera. No obstante como he dicho algunas veces, trabajar a mas bajo nivel siempre es más complicado pero personalmente lo prefiero, y aunq esto traerá un cambio (en PC mayormente puesto q en consolas este tipo de APIs son las usadas) todo es acostumbrarse.

Con respecto a las primitivas de sincronización (barreras, cerrojos, operaciones atomicas...) en un Compute Shader...de tontería tienen poco [+risas] , es la base y son mecanismos necesarios pq sino no se puede hacer nada (todas las APIs las llevan). La sincronización entre hebras dentro de un workgroup o entre distintos grupos es fundamental al igual que los patrones de acceso a memoria (tanto a las locales LDS, las "globales" GDS, cachés, y memoria principal). Recordáis las palabras de la famosa entrevista de super computador y todo eso?. A eso es a lo q se refiere pq así es como se programa un supercomputador, ese es el paradigma con el que se trabaja de ahí la analogía...

DirectX11 (DirectCompute) obviamente ya posee esas características (como cualquier API de GPUGPU):

http://on-demand.gputechconf.com/gtc/20 ... ompute.pdf

Con respecto al paper de Ubisoft, no hay una versión mas optimizada que otra, esta optimización es común. En el paper diferencia claramente la optimización de la versión del compute shader usado portado a otra API (port desde HLSL a PSSL con sus características propias), son dos cosas diferentes.

La ventaja q tiene esta generación de consolas es q a nivel de arquitectura ambas son muy similares, por lo q lo q mejores para una para la otra tb lo hará, menos trabajo todos mucho mas felices, y esto se traduce en mejores resultados.

Un saludo.
No no es común, me acuerdo del artículo que incluía declaraciones de la entrevista y hablaban específicamente de la optimización en la versión PS4 justamente tocando alguna cosa de la sincronización para hacerla manualmente, y como se ganaba bastante rendimiento. Si alguien tiene por ahí en enlace que lo ponga y lo verá.
darksch escribió:No no es común, me acuerdo del artículo que incluía declaraciones de la entrevista y hablaban específicamente de la optimización en la versión PS4 justamente tocando alguna cosa de la sincronización para hacerla manualmente, y como se ganaba bastante rendimiento. Si alguien tiene por ahí en enlace que lo ponga y lo verá.


Buenas gente. Si, la optimización si es común, tengo el paper ahora mismo delante mía. Lo q no es común es el port a la API propia, la cual carece de sincronización implícita, y duplicación implícita de un buffer cuando vas a realizar una copia por lo q eres tú quien tienes que manejarlo (mayor complejidad pero mayor flexibilidad lo q te puede permitir o no mejor rendimiento si eres capaz de hilar fino).

Un saludo.
DirectX 12 mejorará hasta un 750% el rendimiento de los Draw Call

http://soloxboxone.com/2014/11/24/direc ... draw-call/

Imagen

La nueva versión de Direct X12 vuelve a salir a escena mostrando algunas de sus mejoras de rendimiento en una reciente presentación de AMD que ha tenido lugar en Singapour.


Tras la última presentación de AMD ubicada en Singapour, el equipo de Futuremark demostró como mediante el uso del nuevo y prometedor DirectX 12 el uso de los Draw Call mejoraba hasta un 750% con respecto a su antecesor DirectX 11.Este parámetro de rendimiento hace posible conocer el número de objetos que se dibujan en pantalla.

[img]http://soloxboxone.com/wp-content/uploads/2014/11/amd-dx-12-mantle.jpg[/img

De esta manera sabemos que tras la optimización exponencial de este parámetro, la CPU de aquellas máquinas compatibles con Direct X12 como Xbox One se benefician de un aumento de rendimiento importante.

"El número de draw calls son el total de mallas dibujadas tras el proceso de batching, donde batching es el proceso donde el motor intenta combinar el renderizado de múltiples objetos en un único draw call para reducir la sobre carga de la CPU."

Para hacernos una idea, aplicar material a un objeto implica usar un draw call; esto no es en si un concepto totalitario pues hay métodos como el batching que ayudan a simplificar y diversificar recursos con este proceso. Que esta nueva API de DirectX 12 potencie y tanto las bondades de este parámetro se traduce en un ahorro importante de recursos para los desarrolladores.
hadock0 escribió:DirectX 12 mejorará hasta un 750% el rendimiento de los Draw Call

http://soloxboxone.com/2014/11/24/direc ... draw-call/

Imagen

La nueva versión de Direct X12 vuelve a salir a escena mostrando algunas de sus mejoras de rendimiento en una reciente presentación de AMD que ha tenido lugar en Singapour.


Tras la última presentación de AMD ubicada en Singapour, el equipo de Futuremark demostró como mediante el uso del nuevo y prometedor DirectX 12 el uso de los Draw Call mejoraba hasta un 750% con respecto a su antecesor DirectX 11.Este parámetro de rendimiento hace posible conocer el número de objetos que se dibujan en pantalla.

[img]http://soloxboxone.com/wp-content/uploads/2014/11/amd-dx-12-mantle.jpg[/img

De esta manera sabemos que tras la optimización exponencial de este parámetro, la CPU de aquellas máquinas compatibles con Direct X12 como Xbox One se benefician de un aumento de rendimiento importante.

"El número de draw calls son el total de mallas dibujadas tras el proceso de batching, donde batching es el proceso donde el motor intenta combinar el renderizado de múltiples objetos en un único draw call para reducir la sobre carga de la CPU."

Para hacernos una idea, aplicar material a un objeto implica usar un draw call; esto no es en si un concepto totalitario pues hay métodos como el batching que ayudan a simplificar y diversificar recursos con este proceso. Que esta nueva API de DirectX 12 potencie y tanto las bondades de este parámetro se traduce en un ahorro importante de recursos para los desarrolladores.


Astrosurfer en camino, prepara el escudo, esto sera lo que va a pasar:

-falacias, mentiras y rumores.
-DX no mejorara para nada One.
-DX es solo para PC
-One ya tiene su api
-One no es compatible con DX
-Mi pc de 500 euros es al menos 6 veces mejor.

Iba a poner que post corresponde a cada usuario pero no voy a trolear mas. XD
hadock0 escribió:DirectX 12 mejorará hasta un 750% el rendimiento de los Draw Call
http://soloxboxone.com/2014/11/24/direc ... draw-call/

Imagen

La nueva versión de Direct X12 vuelve a salir a escena mostrando algunas de sus mejoras de rendimiento en una reciente presentación de AMD que ha tenido lugar en Singapour.


Tras la última presentación de AMD ubicada en Singapour, el equipo de Futuremark demostró como mediante el uso del nuevo y prometedor DirectX 12 el uso de los Draw Call mejoraba hasta un 750% con respecto a su antecesor DirectX 11.Este parámetro de rendimiento hace posible conocer el número de objetos que se dibujan en pantalla.

[img]http://soloxboxone.com/wp-content/uploads/2014/11/amd-dx-12-mantle.jpg[/img

De esta manera sabemos que tras la optimización exponencial de este parámetro, la CPU de aquellas máquinas compatibles con Direct X12 como Xbox One se benefician de un aumento de rendimiento importante.

"El número de draw calls son el total de mallas dibujadas tras el proceso de batching, donde batching es el proceso donde el motor intenta combinar el renderizado de múltiples objetos en un único draw call para reducir la sobre carga de la CPU."

Para hacernos una idea, aplicar material a un objeto implica usar un draw call; esto no es en si un concepto totalitario pues hay métodos como el batching que ayudan a simplificar y diversificar recursos con este proceso. Que esta nueva API de DirectX 12 potencie y tanto las bondades de este parámetro se traduce en un ahorro importante de recursos para los desarrolladores.

Imagen
dx11 vs dx12 vs mantle , dx12 y mantle consiguen lo mismos , no es un milagro del dx12 ......
test beta de un producto terminado como mantle vs uno que estaba en desarrollo.


100% fiable oye.
nanoxxl escribió:
hadock0 escribió:DirectX 12 mejorará hasta un 750% el rendimiento de los Draw Call
http://soloxboxone.com/2014/11/24/direc ... draw-call/

Imagen

La nueva versión de Direct X12 vuelve a salir a escena mostrando algunas de sus mejoras de rendimiento en una reciente presentación de AMD que ha tenido lugar en Singapour.


Tras la última presentación de AMD ubicada en Singapour, el equipo de Futuremark demostró como mediante el uso del nuevo y prometedor DirectX 12 el uso de los Draw Call mejoraba hasta un 750% con respecto a su antecesor DirectX 11.Este parámetro de rendimiento hace posible conocer el número de objetos que se dibujan en pantalla.

[img]http://soloxboxone.com/wp-content/uploads/2014/11/amd-dx-12-mantle.jpg[/img

De esta manera sabemos que tras la optimización exponencial de este parámetro, la CPU de aquellas máquinas compatibles con Direct X12 como Xbox One se benefician de un aumento de rendimiento importante.

"El número de draw calls son el total de mallas dibujadas tras el proceso de batching, donde batching es el proceso donde el motor intenta combinar el renderizado de múltiples objetos en un único draw call para reducir la sobre carga de la CPU."

Para hacernos una idea, aplicar material a un objeto implica usar un draw call; esto no es en si un concepto totalitario pues hay métodos como el batching que ayudan a simplificar y diversificar recursos con este proceso. Que esta nueva API de DirectX 12 potencie y tanto las bondades de este parámetro se traduce en un ahorro importante de recursos para los desarrolladores.

Imagen
dx11 vs dx12 vs mantle , dx12 y mantle consiguen lo mismos , no es un milagro del dx12 ......


Mantle es DX12 con otro nombre, y lanzamiento prematuro, por acuerdo entre AMD y MS.
17587 respuestas