Postgraduate Course: Parallel Design Patterns (PGPH11071)
Course Outline
School | School of Physics and Astronomy |
College | College of Science and Engineering |
Credit level (Normal year taken) | SCQF Level 11 (Postgraduate) |
Availability | Not available to visiting students |
SCQF Credits | 10 |
ECTS Credits | 5 |
Summary | This module will present a foundation of a pattern language for parallel programming.
Computational patterns are discussed only briefly as many of them are described in detail in other modules of the MSc programme. This module will focus on parallel algorithm strategy patterns such as
- Task Parallelism
- Recursive Splitting
- Geometric Decomposition
- Pipeline
- Discrete Event
- Actors
and implementation Strategy Patterns such as
- Master/Worker
- Loop Parallelism
- Fork/Join
- Shared Queue
Patterns are described on an abstract level and their implementations are explored in the tutorials. Tutorials put emphasis on creation of reusable generic implementations.
Generic applicability of a pattern implementation is demonstrated by applying it to distinct computational problems. Existing libraries (such as those from the Java SDK) are described and their design and use is discussed.
Programming exercises use C and Fortran, with MPI and OpenMP.
|
Course description |
Not entered
|
Entry Requirements (not applicable to Visiting Students)
Pre-requisites |
Students MUST have passed:
Message-Passing Programming (PGPH11078)
|
Co-requisites | |
Prohibited Combinations | |
Other requirements | None |
Course Delivery Information
|
Academic year 2017/18, Not available to visiting students (SS1)
|
Quota: None |
Course Start |
Semester 2 |
Timetable |
Timetable |
Learning and Teaching activities (Further Info) |
Total Hours:
100
(
Lecture Hours 15,
Seminar/Tutorial Hours 11,
Programme Level Learning and Teaching Hours 2,
Directed Learning and Independent Learning Hours
72 )
|
Additional Information (Learning and Teaching) |
Please contact the School for further information
|
Assessment (Further Info) |
Written Exam
0 %,
Coursework
100 %,
Practical Exam
0 %
|
Additional Information (Assessment) |
100% Coursework |
Feedback |
Not entered |
No Exam Information |
Learning Outcomes
On completion of this course, the student will be able to:
- Describe the elements of a design pattern, and describe the advantages that patterns can provide, as well as their limitations.
- Recognise algorithm strategy patterns for the problem at hand.
- Choose the most appropriate implementation pattern.
- Construct reusable parallel codes, understanding the fundamentals of API design.
- Have an awareness of existing frameworks and libraries used to implement parallel design patterns.
|
Additional Information
Graduate Attributes and Skills |
Not entered |
Keywords | PDP (S2) |
Contacts
Course organiser | Dr Nicholas Brown
Tel: (0131 6)50 6420
Email: |
Course secretary | Mr Ben Morse
Tel: (0131 6)51 3398
Email: |
|
|