Graphics Processing Units ( GPUs )
description
Transcript of Graphics Processing Units ( GPUs )
1
Graphics Processing Units (GPUs)
Microprocesadores Para Comunicaciones
Omar Espino Santana - Microprocesadores Para Comunicaciones - ULPGC
2
Índice• Introducción• Historia• Pipeline Gráfico
▫Vertex Shading▫Geometry Shading▫Rasterization▫Pixel Shading
• Arquitectura• Programación de la GPU• GPGPU• Nvidia• AMD• BenchmarksOmar Espino Santana - Microprocesadores Para Comunicaciones - ULPGC
3
Introducción•Cómputo intensivo•Descarga de la CPU•Videojuegos y CAD•Nvidia y AMD (49.6% 50.3%)
Omar Espino Santana - Microprocesadores Para Comunicaciones - ULPGC
4
Historia•Transferencia de memoria•Primitivas 2D hardware•Aparecen APIs (OpenGL y DirectX)•Añaden programabilidad•Unifican Shaders•Tessellation•Demanda GPGPU
Omar Espino Santana - Microprocesadores Para Comunicaciones - ULPGC
5
Pipeline Gráfico
Vertex Shading
Geometry Shading Rasterization Pixel/Fragment
Shading
Renderizado: Conjunto de acciones necesarios para generar una imagen a partir de un modelo.
Omar Espino Santana - Microprocesadores Para Comunicaciones - ULPGC
6
Vertex Shading•Proceso sobre cada vértice
▫Cálculo de luz▫Cálculo de posición (Movimiento)
Omar Espino Santana - Microprocesadores Para Comunicaciones - ULPGC
Pos.z = sin( Pos.x+angle);Pos.z += sin( Pos.y/2+angle);Pos.z *= Pos.x *0.09f;
7
Geometry Shading•Tessellation o Teselado•Genera nuevos vértices•Crea relieves para mejorar el realismo
Omar Espino Santana - Microprocesadores Para Comunicaciones - ULPGC
8
Rasterization•Genera una imagen 2D (mapa de pixels)
▫Clipping: Recorta aquellos vértices que quedan fuera de la ventana de visualización.
▫Conversión de escaneo: En el momento proyectar sobre el plano, habrá pixels que queden encima de otros. Haciendo uso de un Z-buffer, decide cual eliminar.
Omar Espino Santana - Microprocesadores Para Comunicaciones - ULPGC
9
Pixel Shading•Trabaja sobre cada pixel por separado•Da color a cada píxel gracias a
información de:▫Textura▫Luminosidad
Omar Espino Santana - Microprocesadores Para Comunicaciones - ULPGC
10
Arquitectura•Segmentación: Diferentes etapas en el
pipeline.
•Paralelismo: Procesado SIMD (Single Instruction Multiple Data).
•Operaciones en coma flotante: Proyecciones y transformaciones. Trigonometría.
Omar Espino Santana - Microprocesadores Para Comunicaciones - ULPGC
11
Arquitectura•Ejecución secuencial a circular
▫Unified Shaders
Omar Espino Santana - Microprocesadores Para Comunicaciones - ULPGC
12
ArquitecturaGTX 6800GTX 8800
Omar Espino Santana - Microprocesadores Para Comunicaciones - ULPGC
13
Programación de la GPUDirectX (Direct3D) OpenGL
• API de Microsoft• Estable• Restringido• Uso en Xbox y Xbox360• HLSL (Cg de Nvidia)
• API estándar y multiplataforma
• Ámbitos profesionales (CAD)• Política de extensiones• Más sencillo que Direct3D• GLSL
Omar Espino Santana - Microprocesadores Para Comunicaciones - ULPGC
14
GPGPU•General Purpose Compute on GPU
▫Uso para aplicaciones científicas y de simulación que requieran mucho cómputo
Ensamblador HLSL, GLSL y Cg
▫BrookGPU▫CUDA (Nvidia) y ATI Stream (AMD)
Omar Espino Santana - Microprocesadores Para Comunicaciones - ULPGC
15
Nvidia
• DirectX 11• NVIDIA Physx• NVIDIA 3D Vision
Ready• NVIDIA Surround• NVIDIA SLI• NVDIA CUDA
GeForce GTX 580 GeForce GTX 570
• Antialiasing 32x• NVIDIA PureVideo
HD• PCI Express 2.0• DVI Dual Link• HDMI 1.4a
Omar Espino Santana - Microprocesadores Para Comunicaciones - ULPGC
16
AMD
•AMD Eyespeed•PCI Express 2.1•DVI Dual Link•HDMI 1.4a
• Eye Definition• AMD HD3D• AMD Eyefinity• AMD CrossFireX
Omar Espino Santana - Microprocesadores Para Comunicaciones - ULPGC
17
BenchmarksGPU GTX 580 GTX 570 HD 6870 HD 6850 Intel Core i7 920
GFLOPS 1581 1405 2016 1488 70
GTX 580
GTX 570
RADEON HD 6870
RADEON HD 6850
29605
26175
18372
15174
13334
11372
7794
6186
ExtremePerformance
Omar Espino Santana - Microprocesadores Para Comunicaciones - ULPGC
18
Benchmarks
GTX 580
GTX 570
RADEON HD 6870
RADEON HD 6850
124.9
112.8
94.7
83
151.3
137.8
104.6
90.7
146.9
134.5
107.8
94.3
152.1
150.4
119.7
104.1
151.2
150.3
123
108.9
152.1
152.4
135.9
119.9
1440x9001440x900 (8xAA)1680x10501680x1050 (8xAA)1920x12001920x1200 (8x AA)
Resident Evil 5
Omar Espino Santana - Microprocesadores Para Comunicaciones - ULPGC
19
BenchmarksAliens vs. Predator
GTX 580
GTX 570
RADEON HD 6870
RADEON HD 6850
108.9
94.1
74.4
61.6
86.9
74.9
58.8
48.5
70.6
60.8
47.4
38.9
63.3
55.8
43.6
35.4
52.7
44.3
33.2
28.2
43
35.9
27.1
23.1
1920x1200 (4x AA y 16x AF)1680x1050 (4xAA y 16x AF)1440x900 (4xAA y 16x AF)1920x12001680x10501440x900
Omar Espino Santana - Microprocesadores Para Comunicaciones - ULPGC
20
Graphics Processing Units (GPUs)
Omar Espino Santana - Microprocesadores Para Comunicaciones - ULPGC