PORTALE DELLA DIDATTICA

PORTALE DELLA DIDATTICA

PORTALE DELLA DIDATTICA

Elenco notifiche



Parallel and distributed computing

01MNFIU

A.A. 2024/25

Course Language

Inglese

Degree programme(s)

Doctorate Research in Ingegneria Informatica E Dei Sistemi - Torino

Course structure
Teaching Hours
Lezioni 20
Lecturers
Teacher Status SSD h.Les h.Ex h.Lab h.Tut Years teaching
Savino Alessandro   Professore Associato IINF-05/A 10 0 0 0 7
Co-lectures
Espandi

Context
SSD CFU Activities Area context
*** N/A ***    
Il corso introduce le principali metodologie di calcolo parallelo e distribuito, da una classificazione generale a una descrizione dettagliata dello stato dell'arte per la ricerca applicata e pura. Ciò include il moderno supporto multi-thread nei linguaggi di alto livello (ad esempio, C++ e OpenMP), la programmazione GPGPU (ad esempio, CUDA e OpenAcc) e la programmazione distribuita utilizzando i paradigmi MPI. Gli studenti iscritti avranno anche la possibilità di accedere al framework HPC Polito per sperimentare la programmazione multiprocesso, multi-thread e distribuita. L'approccio didattico multilivello rende questo corso interessante per qualsiasi programma di dottorato, ad esempio in ingegneria elettrica, elettronica, meccanica e aerospaziale, dove tali metodologie sono indirettamente utilizzate per scopi di ricerca (ad esempio, il metodo degli elementi finiti).
The course introduces the primary methodologies of parallel and distributed computing, from a general classification to a detailed state-of-the-art description for applied and pure research. This includes modern multi-thread support in high-level languages (e.g., C++ and OpenMP), GPGPU programming (e.g., CUDA and OpenAcc), and distributed programming using MPI paradigms. The students enrolled will also have the chance to access the HPC Polito framework to experience multi-process, multi-thread, and distributed programming. The multi-level teaching approach makes this course of interest to any Ph.D. program, e.g., in electrical, electronics, mechanics, and aerospace engineering, where such methodologies are indirectly used for research purposes (e.g., finite element method).
Programmazione di Base (qualsiasi linguaggio)
Basic programming knowledge (any language)
Introduzione alla computazione parallela e distribuita. Classificazione dei sistemi per la computazione parallela e distrubita. Amdahl's law. SISD, SIMD, MISD, MIMD. Multithreading. Vector processors. Shared memory, distributed memory. Message passing. GPU (CUDA). Clusters. Beowulf. MESI protocol. MPI, PVM. GAMMA, MPI-GAMMA. OpenMP. Optimizing compilers, Intel FORTRAN e C. Profiler. NIC bonding. PCI e PCI-Express. Infiniband. MOSIX. RAM disk. Network benchmarking. Grid computing. SPECint and SPECfp. Analisi dello stato dell'arte, dei problemi aperti e delle nuove sfide.
Introduction to parallel and distributed computing. Classification of parallel and distributed computers. Amdahl's law. SISD, SIMD, MISD, MIMD. Multithreading. Vector processors. Shared memory, distributed memory. Message passing. GPU (CUDA). Clusters. Beowulf. MESI protocol. MPI, PVM. GAMMA, MPI-GAMMA. OpenMP. Optimizing compilers, Intel FORTRAN and C. Profiler. NIC bonding. PCI and PCI-Express. Infiniband. MOSIX. RAM disk. Network benchmarking. Grid computing. SPECint and SPECfp. State-of-the-art analysis, open problems, and challenges.
Modalità mista
Mixed mode
Presentazione orale
Oral presentation
P.D.2-2 - Giugno
P.D.2-2 - June