F20DP - Distributed and Parallel Technologies
Course leader(s):
Syllabus
1. Distributed Technologies: Distribution concepts; low-level, mid-level and high-level distributed technologies; emerging distribution and coordination technologies.
2. Parallel Technologies: Design of parallel systems, parallel performance analysis; programming heterogeneous systems; practical imperative parallel programming; practical declarative parallel programming
Learning outcomes
By the end of the course, students should be able to do the following:
- Construct practical distributed and parallel systems using both declarative and imperative languages using contemporary techniques and modern technologies.
- Tune the performance of parallel code using appropriate profiling tools and optimisation methodologies.
- Contrast imperative and declarative models of parallelism with regards to the advantages and disadvantages of each.
- Evaluate generated parallel performance graphs from executions of different parallel programming models on multiple hardware architectures.
- Develop original and creative parallel problem solutions from algorithmic specifications.
- Reflect on core concepts and technologies in relation to the applicability of, and limitations to, parallel and distributed systems.
Further details
Curriculum explorer: Click here
SCQF Level: 10
Credits: 15