Module Details |
The information contained in this module specification was correct at the time of publication but may be subject to change, either during the session because of unforeseen circumstances, or following review of the module at the end of the session. Queries about the module should be directed to the member of staff with responsibility for the module. |
Title | Multi-Core and Multi-Processor Programming | ||
Code | COMP528 | ||
Coordinator |
Dr MK Bane Computer Science M.K.Bane@liverpool.ac.uk |
||
Year | CATS Level | Semester | CATS Value |
Session 2020-21 | Level 7 FHEQ | First Semester | 15 |
Aims |
|
To provide students with a deep, critical and systematic understanding of key issues and effective solutions for parallel programming for systems with multi-core processors and parallel architectures. |
Learning Outcomes |
|
(LO1) At the end of the module students should be able to: Explain the concepts of multi-core processors and systems and parallel architectures, their advantages and challenges of their programming. |
|
(LO2) Appraise the differences between various programming techniques and programming patterns available for parallel programming for multi-core systems and parallel architectures. |
|
(LO3) Design parallel multi-threaded programs using the most appropriate for a particular application approach, using one of MPI, OpenMP, CUDA, or a combination of thereof. |
|
(LO4) Design and implement reasonably sophisticated parallel multi-threaded programs demonstrating reasonable scalability on multi-core and parallel systems using MPI, OpenMP, or CUDA, or the combination of thereof. |
|
(LO5) Analyse and evaluate the efficiency and scalability of parallel multi-threaded programs for multi-core parallel systems. |
|
(S1) Improving own learning/performance - Personal action planning |
|
(S2) Communication (oral, written and visual) - Presentation skills |
|
(S3) Communication (oral, written and visual) - Report writing |
|
(S4) Critical thinking and problem solving |
|
(S5) Information skills - Critical reading |
|
(S6) Numeracy/computational skills - Reason with numbers/mathematical concepts |
|
(S7) Numeracy/computational skills - Problem solving |
Syllabus |
|
Introduction to multi-core processors and parallel architectures, symmetric multiprocessing (SMP), computer clustered multiprocessing, Intel Many-Integrated Core architecture: opportunities and challenges (3 lectures); applications of high-performance parallel computing and business benefits of HPC: an overview (1 lecture); Elements of parallel programming: decomposition; scaling and speedup; threads; synchronization (3 lectures); MPI Overwiew (1 lecture); Principles of MPI programming for clustered multiprocessing (4 lectures); OpenMP Overview (1 lecture); Principles of OpenMP programming for SMP architectures (4 lectures); graphics processing units (GPU) and programming for compute unified device architecture (CUDA) (4 lectures); comparison of parallel programming languages, including MATHLAB, X10, Chapel, UPC, XcalableMP (1 lecture); combining MPI, OpenMP and CUDA (2 lecture); performance and scalability evaluation and testing (3 lectures) parallel debugging ( 1 lecture); parallelization of existing serial code: opportunities and challenges (2 lectures). The Continuous Assessment elements require computing programming in the language C, and course labs and examples are also in C |
Teaching and Learning Strategies |
|
Teaching Method 1 - Lecture |
Teaching Schedule |
Lectures | Seminars | Tutorials | Lab Practicals | Fieldwork Placement | Other | TOTAL | |
Study Hours |
24 |
6 |
12 |
42 | |||
Timetable (if known) | |||||||
Private Study | 108 | ||||||
TOTAL HOURS | 150 |
Assessment |
||||||
EXAM | Duration | Timing (Semester) |
% of final mark |
Resit/resubmission opportunity |
Penalty for late submission |
Notes |
(528) Final exam | 120 minutes | 50 | ||||
CONTINUOUS | Duration | Timing (Semester) |
% of final mark |
Resit/resubmission opportunity |
Penalty for late submission |
Notes |
(528.1) Assessment 1 There is a resit opportunity. Standard UoL penalty applies for late submission. This is not an anonymous assessment. Assessment Schedule (When): Semester 1 | 48 hours expected fo | 11 | ||||
(528.2) Assessment 2 There is a resit opportunity. Standard UoL penalty applies for late submission. This is not an anonymous assessment. Assessment Schedule (When): Semester 1 | 48 hours expected fo | 11 | ||||
(528.3) Assessment 3 There is a resit opportunity. Standard UoL penalty applies for late submission. This is not an anonymous assessment. Assessment Schedule (When): Semester 1 | 12 | |||||
(528.4) Class Test | 16 |
Recommended Texts |
|
Reading lists are managed at readinglists.liverpool.ac.uk. Click here to access the reading lists for this module. |