Introduction to high-performance computing and evolution of supercomputers (4h).
Kinds of parallelism: temporal, spatial and asynchronous (6h). Flynn classification (5h) - MIMD shared memory (SM) and MIMD distributed memory (DM) (4h).
First and second type of parallelism on chip (4h).
Cluster and multicore architectures (4h).
Basic differences between parallel computing and distributed computing concepts: the cloud computing (2h).
Speed-up, overhead and efficiency of a parallel algorithm, Ware-Amdahl, communication overhead, scaling speedup and efficiency, isofficiency, scalability (7h).
Summation in parallel: strategies I, II and III (in MIMD-SM and MIMD DM environment) (5h).
Matrix for vector product: I, II and III (in MIMD-SM and MIMD-DMemory environment) (5h). MPI library: basic features and functions, major routines for process management and communication. Virtual topologies: Processor grids (7h). OpenMp library: processes and threads, synchronization and semaphore, fork-join parallel execution model, compiler directives, constructs and clauses, runtime library routines and environment variables (6h). - Writing, compiling and running programs that use the MPI library and the OpenMp library employing the C/C++ language (7h). The cloud computing service: AWS. Login with Account and Configuration, management of instances (4h)