MATEMATICA E INFORMATICAInformaticaAnno accademico 2024/2025

1006288 - PROGRAMMAZIONE PARALLELA SU ARCHITETTURE GPU

Docente: GIUSEPPE BILOTTA

Risultati di apprendimento attesi

Conoscenza e capacità di comprensione: acquisire i fondamenti del calcolo massivamente parallelo su hardware moderno (GPU, CPU multicore, acceleratori) e dello stream computing.

Capacità di applicare conoscenza e comprensione: acquisire le competenze necessarie all'applicazione di quanto appreso per lo sviluppo di software parallelo sfruttando i principali framework per lo sviluppo di applicazioni massivamente parallele (CUDA e OpenCL).

Autonomia di giudizio: acquisire la capacità di identificare paradigmi fondamentali (problemi imbarazzantemente paralleli, riduzioni e scan) e relative opportunità di parallelizzazione.

Abilità comunicative: acquisire la capacità di descrivere con proprietà di linguaggio gli aspetti teorici ed implementativi del calcolo parallelo sulle moderne architetture.

Capacità di apprendimento: acquisire la capacita di comprendere testi specialisitici sull'argomento.

Modalità di svolgimento dell'insegnamento

Il corso è composto da lezioni frontali ed applicative, con lo sviluppo in tempo reale del codice di esempio per la presentazione dei vari argomenti, per permettere agli studenti di acquisire già durante le lezioni la necessaria familiarità con gli aspetti pratici del programma e degli esami.

Qualora l'insegnamento venisse impartito in modalità mista o a distanza potranno essere introdotte le necessarie variazioni rispetto a quanto dichiarato in precedenza, al fine di rispettare il programma previsto e riportato nel syllabus

Prerequisiti richiesti

Conoscenza del linguaggio C.
 

Frequenza lezioni

La frequenza è obbligatoria.

Contenuti del corso

Testi di riferimento

NVIDIA CUDA Programming Guide
OpenCL specification

Programmazione del corso

 ArgomentiRiferimenti testi
1Concetti generali della programmazione GPUNVIDIA CUDA Programming Guide
2Aspetti tecnici della programmazione OpenCLOpenCL specification

Verifica dell'apprendimento

Modalità di verifica dell'apprendimento

Sono ammesse due modalità per l'esame di fine corso:

La valutazione dell'esame di laboratorio o del progettino finale porterà all'assegnazione di un voto secondo il seguente schema:

Studenti/esse con disabilità e/o DSA dovranno contattare con sufficiente anticipo rispetto alla data dell'esame il docente e il referente CInAP del DMI per comunicare che intendono sostenere l'esame fruendo delle opportune misure compensative.

Esempi di domande e/o esercizi frequenti

http://www.dmi.unict.it/~bilotta/gpgpu/esami/


English version