Course Details
Course Code (English)
*
Semester
*
Title (English)
*
Lecture Hours (Weekly)
ECTS Credits
*
Course Type (English)
Prerequisites (English)
Programming Ι (ΥΠ02) Programming II (ΥΠ05) Discrete Mathematics (ΥΠ09) Computational Mathematics (ΜΥ01) Numerical Analysis (MY03)
Course URL (e.g., on e-class)
Learning Outcomes (English)
The course aims at introducing the basic concepts of Parallel Processing and Parallel Algorithms. Basic immutable principles are considered such as the efficiency of parallel systems, Amdhal's law, Flynn's taxonomy and interconnection systems. The architectures of shared and distributed memory are presented as well as cache memory architectures. Fundamental concepts are presented such as non-determinism, race condition, critical sections, mutually exclusive access and mutual exclusion lock. The programming environments of MPI, POSIX Threads and OpenMP are analyzed. At the Laborarory, students receive valuable experience and apply theory and parallel programming techniques. They are assessed based on specially designed laboratory exercises. The laboratory exercises are designed based on real application requirements (e.g. parallel methods for solving linear systems, parallel processing of big data for climate change).
General Competencies (English)
Independent work Team work Search, analysis and synthesis of data and information with the use of the assorted technologies Decision Making Adaptation in new conditions
Course Content (English)
Basic concepts, The Amdahls Law, Flynns taxonomy Networks and interconnection topologies Shared Memory Parallel Architectures Message Passing Parallel Architectures Distributed Shared Memory Parallel Architectures Performance Measurement of Parallel Systems Parallel Programming, Parallel Techniques and Algorithms, MPI and OpenMP Multiprocessors Cache Memories Instruction Level Parallelism - Pipelining, Multiple Issue Hardware Multithreading (fine-grained, coarse-grained, SMT) GPU parallel architecture
Use of ICT (English)
MPI, POSIX Threads and OpenMP programming environments Electronic communication with students Use of digital presentations Learning process support through the electronic platform e-class
Is it elective?
Άγνωστο
Ναι
Όχι
Load within semester (Hours)
Lecture Hours
Lab Hours
Independent Study
*
Project Work
*
Lab Report
*