graphics processing units ( gpus )

20
Graphics Processing Units (GPUs) Microprocesadores Para Comunicaciones Omar Espino Santana - Microprocesadores Para Comunicaciones - ULPGC 1

Upload: albin

Post on 23-Feb-2016

42 views

Category:

Documents


0 download

DESCRIPTION

Graphics Processing Units ( GPUs ). Microprocesadores Para Comunicaciones. Índice. Introducción Historia Pipeline Gráfico Vertex Shading Geometry Shading Rasterization Pixel Shading Arquitectura Programación de la GPU GPGPU Nvidia AMD Benchmarks. Introducción. Cómputo intensivo - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Graphics Processing Units  ( GPUs )

1

Graphics Processing Units (GPUs)

Microprocesadores Para Comunicaciones

Omar Espino Santana - Microprocesadores Para Comunicaciones - ULPGC

Page 2: Graphics Processing Units  ( GPUs )

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

Page 3: Graphics Processing Units  ( GPUs )

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

Page 4: Graphics Processing Units  ( GPUs )

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

Page 5: Graphics Processing Units  ( GPUs )

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

Page 6: Graphics Processing Units  ( GPUs )

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;

Page 7: Graphics Processing Units  ( GPUs )

7

Geometry Shading•Tessellation o Teselado•Genera nuevos vértices•Crea relieves para mejorar el realismo

Omar Espino Santana - Microprocesadores Para Comunicaciones - ULPGC

Page 8: Graphics Processing Units  ( GPUs )

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

Page 9: Graphics Processing Units  ( GPUs )

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

Page 10: Graphics Processing Units  ( GPUs )

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

Page 11: Graphics Processing Units  ( GPUs )

11

Arquitectura•Ejecución secuencial a circular

▫Unified Shaders

Omar Espino Santana - Microprocesadores Para Comunicaciones - ULPGC

Page 12: Graphics Processing Units  ( GPUs )

12

ArquitecturaGTX 6800GTX 8800

Omar Espino Santana - Microprocesadores Para Comunicaciones - ULPGC

Page 13: Graphics Processing Units  ( GPUs )

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

Page 14: Graphics Processing Units  ( GPUs )

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

Page 15: Graphics Processing Units  ( GPUs )

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

Page 16: Graphics Processing Units  ( GPUs )

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

Page 17: Graphics Processing Units  ( GPUs )

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

Page 18: Graphics Processing Units  ( GPUs )

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

Page 19: Graphics Processing Units  ( GPUs )

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

Page 20: Graphics Processing Units  ( GPUs )

20

Graphics Processing Units (GPUs)

Omar Espino Santana - Microprocesadores Para Comunicaciones - ULPGC