Module overview
Aims and Objectives
Learning Outcomes
Subject Specific Intellectual and Research Skills
Having successfully completed this module you will be able to:
- Identify parallel design patterns applicable to a given compute problem
- Identify performance constraints and predict and measure performance for a given solution
- Choose a framework and approach for solving a given high-performance computing problem
- Identify trade-offs between minimising programmer effort versus environmental impact of excessive compute
Knowledge and Understanding
Having successfully completed this module, you will be able to demonstrate knowledge and understanding of:
- Understand the different types of high-performance computing paradigms available
- Understand the relationship between data and computation, and latency and throughput
- Describe the main frameworks for HPC and their relative strengths and weaknesses
Subject Specific Practical Skills
Having successfully completed this module you will be able to:
- Apply an existing HPC framework to a data-constrained problem
- Apply an existing HPC framework to a compute-limited problem
Syllabus
Approaches to high-performance compute
- Scale-up and scale-out
- Concurrency and parallelism
- Acceleration, optimisation, and re-organisation
- Measuring and evaluating performance
- Managing latency vs throughput
- Data-placement and access
- Design patterns for high-performance compute
- Environmental impact and ethics of using large-scale compute
Specific systems and tools:
- MPI
- Hadoop
- Data pipelines
Real-world case studies:
- Distributed learning
- Physics problems
Learning and Teaching
Teaching and learning methods
Lectures, problem classes, and self-driven lab exercises
Type | Hours |
---|---|
Revision | 10 |
Specialist Laboratory | 12 |
Lecture | 36 |
Completion of assessment task | 75 |
Wider reading or practice | 17 |
Total study time | 150 |
Assessment
Summative
This is how we’ll formally assess what you have learned in this module.
Method | Percentage contribution |
---|---|
Exam | 50% |
Computing assignment | 50% |
Referral
This is how we’ll assess you if you don’t meet the criteria to pass this module.
Method | Percentage contribution |
---|---|
Exam | 100% |
Repeat
An internal repeat is where you take all of your modules again, including any you passed. An external repeat is where you only re-take the modules you failed.
Method | Percentage contribution |
---|---|
Exam | 100% |