Postgraduate Programme and Module Handbook 2007-2008 (archived)
Module COMP40815: PARALLEL PROGRAMMING FOR HIGH-PERFORMANCE COMPUTING
Department: Computer Science
COMP40815:
PARALLEL PROGRAMMING FOR HIGH-PERFORMANCE COMPUTING
Type |
Tied |
Level |
4 |
Credits |
15 |
Availability |
Available in 2007/08 |
Tied to |
G5K209 |
Tied to |
G5K309 |
Prerequisites
Corequisites
Excluded Combination of Modules
Aims
- High Performance Computing (HPC) is widely used in natural sciences. This module is aimed at teaching principles, knowledge and programming skills for HPC. In particular, the module focuses on good parallel-programming practice following programming methodologies and software-engineering principles, and will include analysis of performance and programming style of MPI (Message Passing Interface) programs.
Content
- Fundamental principles of parallel programming.
- Modern architectures (including multi-core, shared memory, clusters and computing grids) and the performance implications for parallel programming and optimization.
- Developing parallel programs from specifications.
- Basic parallel-program patterns, algorithms and existing large code examples.
- Performance analysis (portability and scalability).
Learning Outcomes
- A specialised understanding of the hierarchy of modern architecture and their performance implications.
- Be able to outline and critically review criteria for quality of parallel programs.
- Developing advanced practical skills for MPI parallel programming.
- Prediction and analysis of program performance.
Modes of Teaching, Learning and Assessment and how these contribute to
the learning outcomes of the module
- Content will be delivered via conventional lectures and group discussions. The group discussions are an important part of the module, and will explore how modern programming ideas can help in this difficult domain.
- The assessments will involve writing MPI programs and reports which analyse the programs and their performance.
Teaching Methods and Learning Hours
Activity |
Number |
Frequency |
Duration |
Total/Hours |
|
lectures |
12 |
6/week |
1 hour |
12 |
discussions |
4 |
2/week |
2 hours |
8 |
tutorials/practicals |
6 |
3/week |
2 hour |
12 |
Summative Assessment
Component: Summative work |
Component Weighting: 100% |
Element |
Length / duration |
Element Weighting |
Resit Opportunity |
Writing MPI code |
1 week |
50% |
|
Written report |
1 week |
50% |
|
Practice with MPI coding. Tutorials will also help give feedback on a student's progress on relevant exercises.
■ Attendance at all activities marked with this symbol will be monitored. Students who fail to attend these activities, or to complete the summative or formative assessment specified above, will be subject to the procedures defined in the University's General Regulation V, and may be required to leave the University