Struttura del corso
Introduzione
Il concetto fondamentale della metodologia del calcolo eterogeneo
Perché il calcolo parallelo? L’importanza del calcolo parallelo
Processori multi-core: architettura e progettazione
Introduzione ai thread, nozioni base sui thread e concetti fondamentali della programmazione parallela
Nozioni di base sui processi di ottimizzazione software per le GPU
OpenMP: standard per la programmazione parallela basata su direttive
Esercitazioni pratiche e dimostrazioni su macchine dotate di più core
Introduzione al calcolo con le GPU
L’uso delle GPU nel calcolo parallelo
Il modello di programmazione delle GPU
Esercitazioni pratiche e dimostrazioni su piattaforme dotate di GPU
SDK, toolkit e configurazione dell’ambiente di sviluppo per le GPU
Lavorare con diverse librerie dedicate alle GPU
Demonstrazioni pratiche di funzionalità delle GPU e strumenti tramite esempi di programmazione e OpenACC
Concetti base del modello di programmazione CUDA
L’architettura di CUDA spiegata nei dettagli
Configurazione degli ambienti di sviluppo per CUDA
Utilizzo dell’API runtime di CUDA
Nozioni riguardanti il modello di memoria in CUDA
Approfondimento delle funzionalità aggiuntive dell’API CUDA
Ottimizzazione dell’accesso alla memoria globale in CUDA: tecniche per migliorarne l’efficienza
Ottimizzazione dei trasferimenti di dati in CUDA tramite i flussi di lavoro (CUDA streams)
L’utilizzo della memoria condivisa in CUDA
Nozioni riguardanti le operazioni atomiche e le istruzioni all’interno di CUDA
Caso pratico: elaborazione base delle immagini digitali mediante CUDA
Programmazione multi-GPU: concetti ed esempi applicativi
Analisi avanzata delle prestazioni hardware e tecniche di campionamento in ambienti NVIDIA/CUDA
Utilizzo dell’API CUDA Dynamic Parallelism per l’avvio dinamico dei kernel
Sintesi e conclusioni del corso
Requisiti
- Programmazione in C
- Utilizzo di Linux GCC
Recensioni (1)
L'energia e l'umorismo dei formatori.
Tadeusz Kaluba - Nokia Solutions and Networks Sp. z o.o.
Corso - NVIDIA GPU Programming - Extended
Traduzione automatica