SlideShare une entreprise Scribd logo
1  sur  18
GPU - Graphics Processing Unit
                                           Corso di Sistemi Paralleli




13 Giugno 2012   Luigi La Torre - 744581
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

                 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



   Miglioramento Performance/Watt
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

Contenu connexe

Similaire à Gpu

A query-to-hardware compiler for FPGA architectures
A query-to-hardware compiler for FPGA architecturesA query-to-hardware compiler for FPGA architectures
A query-to-hardware compiler for FPGA architectures
Enrico Cambiaso
 
Mpc8308 rdb piattaforma di riferimento della freescale - recensione - 2010-10-26
Mpc8308 rdb piattaforma di riferimento della freescale - recensione - 2010-10-26Mpc8308 rdb piattaforma di riferimento della freescale - recensione - 2010-10-26
Mpc8308 rdb piattaforma di riferimento della freescale - recensione - 2010-10-26
Ionela
 
Software libero nei sistemi embedded
Software libero nei sistemi embeddedSoftware libero nei sistemi embedded
Software libero nei sistemi embedded
Daniele Costarella
 
Radeon hd 6800 amd rivela la nuova scheda radeon hd 6800 2010-10-29
Radeon hd 6800  amd rivela la nuova scheda radeon hd 6800   2010-10-29Radeon hd 6800  amd rivela la nuova scheda radeon hd 6800   2010-10-29
Radeon hd 6800 amd rivela la nuova scheda radeon hd 6800 2010-10-29
Ionela
 
Un Pinguino Nel Tuo Modem
Un Pinguino Nel Tuo ModemUn Pinguino Nel Tuo Modem
Un Pinguino Nel Tuo Modem
Marco Scaloni
 
Architettura degli Elaboratori
Architettura degli ElaboratoriArchitettura degli Elaboratori
Architettura degli Elaboratori
sviciu
 

Similaire à Gpu (20)

Pastore - Commodore 65 - La storia
Pastore - Commodore 65 - La storiaPastore - Commodore 65 - La storia
Pastore - Commodore 65 - La storia
 
E1 Memorie
E1 MemorieE1 Memorie
E1 Memorie
 
Assemblare un pc
Assemblare un pcAssemblare un pc
Assemblare un pc
 
[SLIDE]Modellazione della dinamica di un liquido bifase mediante GPU CUDA
[SLIDE]Modellazione della dinamica di un liquido bifase mediante GPU CUDA[SLIDE]Modellazione della dinamica di un liquido bifase mediante GPU CUDA
[SLIDE]Modellazione della dinamica di un liquido bifase mediante GPU CUDA
 
A query-to-hardware compiler for FPGA architectures
A query-to-hardware compiler for FPGA architecturesA query-to-hardware compiler for FPGA architectures
A query-to-hardware compiler for FPGA architectures
 
Glusterfs: un filesystem altamente versatile
Glusterfs: un filesystem altamente versatileGlusterfs: un filesystem altamente versatile
Glusterfs: un filesystem altamente versatile
 
Glusterfs: un filesystem altamente versatile
Glusterfs: un filesystem altamente versatileGlusterfs: un filesystem altamente versatile
Glusterfs: un filesystem altamente versatile
 
Mpc8308 rdb piattaforma di riferimento della freescale - recensione - 2010-10-26
Mpc8308 rdb piattaforma di riferimento della freescale - recensione - 2010-10-26Mpc8308 rdb piattaforma di riferimento della freescale - recensione - 2010-10-26
Mpc8308 rdb piattaforma di riferimento della freescale - recensione - 2010-10-26
 
DHow2 - L5
DHow2 - L5DHow2 - L5
DHow2 - L5
 
Lezione1 introduzione micro
Lezione1 introduzione microLezione1 introduzione micro
Lezione1 introduzione micro
 
Software libero nei sistemi embedded
Software libero nei sistemi embeddedSoftware libero nei sistemi embedded
Software libero nei sistemi embedded
 
Radeon hd 6800 amd rivela la nuova scheda radeon hd 6800 2010-10-29
Radeon hd 6800  amd rivela la nuova scheda radeon hd 6800   2010-10-29Radeon hd 6800  amd rivela la nuova scheda radeon hd 6800   2010-10-29
Radeon hd 6800 amd rivela la nuova scheda radeon hd 6800 2010-10-29
 
3DD 1e IPGen
3DD 1e IPGen3DD 1e IPGen
3DD 1e IPGen
 
Un Pinguino Nel Tuo Modem
Un Pinguino Nel Tuo ModemUn Pinguino Nel Tuo Modem
Un Pinguino Nel Tuo Modem
 
02_-_Il_Personal_Computer_Dentro_e_Fuori_1.pptx
02_-_Il_Personal_Computer_Dentro_e_Fuori_1.pptx02_-_Il_Personal_Computer_Dentro_e_Fuori_1.pptx
02_-_Il_Personal_Computer_Dentro_e_Fuori_1.pptx
 
Scheda video word
Scheda video wordScheda video word
Scheda video word
 
Architettura degli Elaboratori
Architettura degli ElaboratoriArchitettura degli Elaboratori
Architettura degli Elaboratori
 
Lezioni 2009
Lezioni 2009Lezioni 2009
Lezioni 2009
 
Seminario Marco Moro, 8-11-2012
Seminario Marco Moro, 8-11-2012Seminario Marco Moro, 8-11-2012
Seminario Marco Moro, 8-11-2012
 
Cpu
CpuCpu
Cpu
 

Gpu

  • 1. GPU - Graphics Processing Unit Corso di Sistemi Paralleli 13 Giugno 2012 Luigi La Torre - 744581
  • 2. Outline  Introduzione  Evoluzione nel tempo  Hardware GPU  Fermi  Kepler  Conclusioni
  • 3. 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
  • 4. Introduzione - 2  CPU vs GPU
  • 5. Introduzione - 3  Motivazioni
  • 6. 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
  • 7. 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
  • 8. Hardware GPU  N multiprocessori con M core ciascuno  SIMD - Ogni core condivide un Istruction Unit con altri core in un multiprocessore
  • 9. 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
  • 10. 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
  • 11. Architettura Fermi - 1  512 CUDA core  4 GPC (Graphic Processing Cluster)  16 SM  768 KB L2 Cache  4 Raster Engine  1581 GFLOPs  244 W
  • 12. 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
  • 14. Architettura Kepler  1536 CUDA core  4 GPC  8 SMX  512 KB L2 Cache  4 Raster Engine  3090 GFLOPs  195 Watt
  • 15. Architettura Kepler - SMX  192 CUDA core  64KB L1 Cache  32 SFU  PolyMorph Engine 2.0  4 Warp Scheduler
  • 16. Fermi vs Kepler 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  Miglioramento Performance/Watt
  • 17. 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
  • 18. References  GPU History Paper  Hardware GPU  Architettura Fermi  Architettura Kepler