Tu sei qui

Scientific Programming II: High Performance Computing

Periodo di svolgimento

da Lunedì, 11 Gennaio 2021 a Lunedì, 31 Maggio 2021
Ore del corso: 40
Ore dei docenti responsabili: 40

Modalità d'esame

  • Relazione o seminario

Prerequisiti

Anni di corso: IV, V, PhD

Prerequisiti: Il corso è complementare a "Scientific Programming II" e introdurrà concetti più avanzati sul problema delle prestazioni, ma può essere seguito indipendentemente.  Nessuna conoscenza pregressa nella programmazione è richiesta.

Programma

Il corso tratterà i temi seguenti:
  • Introduzione alle architetture dei computer, i limiti hardware, e i linguaggi di programmazione
  • Concetti di base del linguaggio
  • Concetti avanzati del linguaggio in termini di prestazione
  • Programmazione parallela
  • Ottimizzazione di codice e interfacce
Concetti chiave del linguaggio verranno illustrati attraverso la realizzazione progressiva di un programma completo durante il corso.
Il corso contiene una parte didattica di 32 ore (2 lezioni di 2 ore ciascuna per settimana) e una parte di esercizi in laboratorio di 8 ore (2 sessioni di 4 ore, una sui concetti di base, l'altra su concetti più avanzati).

Obiettivi formativi

Il corso intende fornire una conoscenza pratica sullo sviluppo di programmi per il calcolo ad alta prestazione (HPC) nell'ambito delle scienze computazionali.
Il corso introdurrà il linguaggio Fortran 2008, e discuterà di vari aspetti del calcolo HPC, indipendenti del linguaggio: parallelizzazione, procedura di compilazione, gestione della memoria.