Gpu
-
Upload
luigi-la-torre -
Category
Documents
-
view
505 -
download
1
description
Transcript of Gpu
GPU - Graphics Processing UnitCorso di Sistemi Paralleli
Luigi La Torre - 74458113 Giugno 2012
Outline
Introduzione Evoluzione nel tempo Hardware GPU
Fermi Kepler
Conclusioni
Introduzione - 1
Progettata per scaricare e accelerare il rendering 2D/3D dalla CPU
Architettura core SIMD Core operano a frequenze basse Centinaia di core Unità programmabile
I principali vendor NVDIA AMD
Introduzione - 2
CPU vs GPU
Introduzione - 3
Motivazioni
Evoluzione nel tempo - 1
1980: Chip TTL IBM: Intel 8088 Silicon Graphics Inc. (SGI)
1990: 0 Generazione II Generazione
RealityEngine (SGI) Voodoo (3dfx) GeForce256 (NVIDIA), Radeon 7500 (ATI): nasce
il termine GPU (1999). “Fixed Function” pipeline
Evoluzione nel tempo - 2
2000: III Generazione VII Generazione
GeForce 3 - Pipeline semi programmabili: Shaders GeForce FX, Radeon 9700 - Pipeline
programmabili completamente GeForce 8 - Processore altamente parallelo.
Streaming Multiprocessor Architettura Fermi (NVIDIA): Prima GPU
progettata per GPGPU 2010 e oltre:
Architettura Kepler APU (Accelerated Processig Unit): CPU + GPU
Hardware GPU
N multiprocessori con M core ciascuno
SIMD - Ogni core condivide un Istruction Unit con altri core in un multiprocessore
Hardware GPU - Memorie (Modello Cuda) - 1
Global Memory Memoria più grande. Fino a
4 GB Alto bandwidth (GB/s) Latenza molta alta
Local Memory Poco spazio di memoria Accessibile solo da un
streaming processor Lenta come Global Memory
Shared Memory 16 KB condivisi da un
multiprocessor Memoria veloce Può essere considerata
come una cache L1
Hardware GPU - Memorie (Modello Cuda) - 2
Constant Memory 64 KB solo lettura per
tutti i blocchi Abbastanza lenta Latenza piuttosto alta,
se dati non in cache Texture Memory
Solo lettura per ogni blocco
Lenta come Global Memory
Utilizzata per l’interpolazione lineare delle immagini
Architettura Fermi - 1
512 CUDA core
4 GPC (Graphic Processing Cluster)
16 SM 768 KB L2
Cache 4 Raster
Engine 1581 GFLOPs 244 W
Architettura Fermi - 2
32 CUDA core Operazioni di Shading e
geometria, oltre ai calcoli puramente computazionali e fisici
16 KB L1 Cache 4 SFU (Special Function
Units) Gestiscono le istruzioni di
interpolazione 2 Warp Scheduler PolyMorph Engine
Gestisce l’output, tessellation
Tessellation - Esempio
Architettura Kepler
1536 CUDA core 4 GPC 8 SMX 512 KB L2 Cache 4 Raster Engine 3090 GFLOPs 195 Watt
Architettura Kepler - SMX
192 CUDA core 64KB L1 Cache 32 SFU PolyMorph Engine 2.0 4 Warp Scheduler
Fermi vs Kepler
Miglioramento Performance/Watt
Fermi Kepler
# Transistor 3 miliardi 3,54 miliardi
CUDA core 512 1536
Core clock 772 Mhz 1006 Mhz
GFLOPs 1581 3090
TDP 244 W 195 W
Conclusioni
GPU è passato da specifici single core, pipeline “Fixed Function” esclusivamente per la grafica a un set di core paralleli e altamente programmabili
Core GPU in continuo aumento
References
GPU History Paper Hardware GPU Architettura Fermi Architettura Kepler