Archivo

Categories
Portada (146)

Archive 2018
Julio (1)
Mayo (1)

Archive 2017
Julio (3)
Junio (9)
Abril (1)
Enero (8)

Archive 2016
Junio (8)
Mayo (4)
Abril (3)
Marzo (3)
Enero (7)

Archive 2015
Agosto (3)
Julio (2)
Junio (1)
Mayo (1)
Abril (2)
Marzo (4)
Enero (9)

Archive 2014
Agosto (12)
Julio (53)
Junio (11)

Portada

Notapor FLASHBACKMAN » 28 Jul 2014, 16:18

Imagen
Doug Burger, uno de los genios de Microsoft.

http://research.microsoft.com/en-us/projects/e2/

Vamos a ir desarrollando el sistema de aceleración E2 y como integra ésta solución Microsoft en su APU, vamos a ir viendo conceptos avanzados, como funcionan los nuevos SIMD 2.0 que incorpora XBox One y las VGA Treasure Island. Y más, mucho más- Espero que los "insiders" y los "megausers" que tenemos, echen una mano al desarrollo.

Las nuevas VGA R9 300 Treasure Island Sistema (SIMD 2.0) R9 370 1536 ALU's divididos en 1 bloque de 512 para Gfx y 2 bloques de 512 para Computo. [url=http:/www.elotroforo.net]XBox One[/url] tiene tecnología similar, 1536 ALU's 2 bloques para GFX, 2 bloques para Computo

Recordamos que hay 12CU en el apartado de GPU, si. Cierto. Pero con áreas desdobladas. Con lo cual los 2 CP para GFX y los 2 CP para GPGPU que tiene X1 pueden hacer cada uno, una división de tarea tal como Microsoft enseño en su diagrama o como en el siguiente: Imagen Imagen

Como ya sabemos en parte gracias al insider @Papatuelo
las CPU de AMD tienen ALU's FMAC que son básicamente igual a las ALU del GPU. Así que podemos decir que los nuevos CPU de AMD son parcialmente un GPU.

Como ya hemos dicho 40 veces: CP Compute, es la parte "nextgen" que utiliza la solo la "parte" del SIMD del GPU, fusionado con ARM, DSP / FPGA. CP Compute y GP Compute, áreas diferenciadas en las cuales un CPU pretende ser un GPU y un GPU pretende ser un CPU.

Algunas veces el término técnico para algunas personas que no saben de que va esto, tendrán tendencia a confundirlo, teniendo ambos conceptos un significado diferente, pero en esencia es el mismo resultado.

Tal y como lo concibe Microsoft con tecnología actual para reclamar la del futuro recrea el GPU haciendo una fusión.

ARM SIMD's GCN2.0 vulgarmente llamados como "compute cores" (cada uno de los compute cores trabaja en paralelo)

La e/SRAM se puede usar como ·scratchpad" pero cada CU tiene un tipo "llamemosle diferente" de memoria caché que es una parte de la memoria total de la APU (47MB).

Recordar que con DX11 la CPU no tiene acceso a la "e/SRAM" que utiliza el GPU para el r/w, algo que se solventará con DX12. El proyecto E2 tiene todas las respuestas. Full programable.

Se suma/se combina, para entender viejas arquitecturas. Para entender futuras arquitecturas. MCU's al poder.

GPU : Con funciones fijas + GPCompute + Render output
Que no hombre, que XBox One no es una VGA de PC y la arquitectura NoC/SoC no es fruto de 3 cafés.
La parte del CU del GPU en temas de GP Compute sólo tiene desdobladas las áreas referentes al SIMD, no tiene funciones fijas "NO RBE, NO ROPs"

La motivación del proyecto de E2 que se cree que sólo sirve para offload y aunque si bien es cierto que la tarea principal es la de ser un acelerador masivo para ARM o X86, también se compone de una mejora de eficiencia energética en el costo de Flop/w, también aumenta la eficiencia de forma drástica en arquitecturas de single thread (aunque no es el caso en X1). E2 puede integrarse dentro de una estructura ya montada para fortalecerla o simplemente puede dedicarse a otras labores específicas. Como no se, ¿"iluminación estilo "películas render"?.

Imagen

En el modo vector, cada core se compone de cuatro carriles independientes de vectores, cada uno con un 32 ventanas de instrucciones, dos buffers operando a 64 bits, una ALU para ambos bufers y operaciones coma flotante,(hola 64+64 ALU's) más 16 registros.

En el modo escalar, las ALU `s en las lineas 3 y 4 son impulsadas hacia abajo para compartir el recurso primitivo y las fases de instrucción, bufers operacionales y los registros están a disposición de las otras dos lineas.

32/64/128bits ALU's pueden ser factibles. Cuando el sistema E2 se integre y se reprograme para DX12 y use el concepto para el cual se creó... generará una arquitectura específica para elementos "tileables". Una arquitectura que consta de bajo consumo y alto rendimiento, núcleos de procesamiento descentralizados conectados por el famoso sistema "NoC". Este diseño programable otorga a XBox One los beneficios de otras tecnologías derivadas del software como las PRT MEGATEXTURES, pero con el beneficio del troceo nativo a nivel de hardware, a saber, la rapidez, la simplicidad, la escalabilidad, y la tolerancia a fallos, que hacen de XBox One un sistema preparado de forma nativa para trocear todo lo "que ves".

La granularidad en un sistema como PS4 concebido hacia la potencia lineal, es absurda. Y la eficiencia en cualquier sistema tier1 o tier2 sin "troceo", cohesión, paralelismo, lecturas y escrituras paralelas...etc, etc, es poco más que una odisea no realizable. Ya puedes mejorar el software todo lo que quieras, que el beneficio es limitado. ¿GDDR5? no es una buena idea, si lo que requieres es trocear todo lo que ves.

http://www.google.com.lb/patents/US7830392

Algunos datos de interés:
[+] SPOILER (click para abrir)
http://www.gamedev.net/topic/656346-direct3d-12-staging-resources/#entry5153199

The key point : - D3D 12 will have multiple methods for moving data between CPU & GPU, each serving different scenarios/performance requirements.

More details later this year - D3D 12 will also expose the ability to map multidimensional GPU local resources - useful for reading out the results of a reduction operation with low-latency for example. In this case it would be write combined CPU access with GPU locality. - Cacheability and locality will not be mutable properties of memory allocations but 12 will allow memory of those given properties to be retasked for multiple resource types (1D/2D/3D, VB/Texture/UAV/..., width/height/depth, etc).

More details later this year.... *) Keyword, locality, retasked, low latecy, multiple move data (move engine) *) locality need High speed (example eSRAM) *) retasked (bundles, the data from locality rather than from off die) X1 certainly and clearly first of its kind, first system engineered for full DX12 GPU and beyond, as DX12 is threshold into full programmable GP compute


Calculo comparativo del SIMD PUs vs STREAM PUs:
[+] SPOILER (click para abrir)
SPU vs SPUs
1SPU=4SPUs
4SPUS=4ALUs

768SPU vs 1152SPUs
768SPU*4=3072SP

1280SPUs en total con los 20 CU de PS4
1280SPUs/4=320SPU

768SPU vs 320SPU en DP dentro de sistema escalar
3072SPUs vs 1152SPUs en SP dentro de un sistema linear

cron