Information in the Degree Programme Tables may still be subject to change in response to Covid-19

University Homepage
DRPS Homepage
DRPS Search
DRPS Contact
DRPS : Course Catalogue : School of Informatics : Informatics

Postgraduate Course: Numerical Algorithms for High Performance Computing (INFR11174)

Course Outline
SchoolSchool of Informatics CollegeCollege of Science and Engineering
Credit level (Normal year taken)SCQF Level 11 (Postgraduate) AvailabilityAvailable to all students
SCQF Credits10 ECTS Credits5
SummaryThe development of High Performance Computing (HPC) systems has been largely driven by the requirements of Computational Scientists running large-scale numerical simulations such as global weather forecasting or studying new materials at the atomic scale. This course covers some of the basic numerical algorithms and computational patterns used in HPC and how they are implemented and used in practice, including the use of standard packages and libraries. Where appropriate, reference will be made to parallel implementations.

All these algorithms operate on real-valued variables, not integers, so it is important to understand the issues around storing and working with floating-point numbers, including the errors that this can introduce. This is an applied course and running the algorithms in practical situations is a key component.
Course description The course will cover:
- Computational science as the third methodology
- Basic numerics, floating-point representation, errors and exceptions
- Simple ordinary differential equations
- N-body / particle methods
- Dense linear algebra, algorithms and libraries
- Partial differential equations and boundary value problems
- Sparse linear algebra
- Initial value problems and implicit methods
- Spectral methods - Fast Fourier Transforms (FFTs) and applications
- Monte Carlo methods
Entry Requirements (not applicable to Visiting Students)
Pre-requisites Co-requisites
Prohibited Combinations Other requirements Students are required to be familiar with C, C++ or Fortran for practical exercises. Basic mathematical knowledge is assumed but only at final-year school level.
Information for Visiting Students
Pre-requisitesStudents are required to be familiar with C, C++ or Fortran for practical exercises. Basic mathematical knowledge is assumed but only at final-year school level.
High Demand Course? Yes
Course Delivery Information
Academic year 2020/21, Available to all students (SV1) Quota:  80
Course Start Semester 1
Timetable Timetable
Learning and Teaching activities (Further Info) Total Hours: 100 ( Lecture Hours 20, Supervised Practical/Workshop/Studio Hours 10, Summative Assessment Hours 2, Programme Level Learning and Teaching Hours 2, Directed Learning and Independent Learning Hours 66 )
Assessment (Further Info) Written Exam 50 %, Coursework 50 %, Practical Exam 0 %
Additional Information (Assessment) Written Exam 50%
Coursework 50% (2 assignments)

Written examination comprised of compulsory questions (equally weighted).

Coursework (class test) is an examination question presented to the students mid-Semester
Feedback Provided via practical classes and following examination.
Exam Information
Exam Diet Paper Name Hours & Minutes
Main Exam Diet S1 (December)Numerical Algorithms for High Performance Computing2:00
Learning Outcomes
On completion of this course, the student will be able to:
  1. Explain why computer simulation is an essential technique in many areas of science, and understand its advantages and limitations.
  2. Describe how real-valued quantities are represented on a computer and understand the various sources and types of error.
  3. Understand how physical problems are represented in a discrete form suitable for computer simulation.
  4. Discuss the appropriate choice of algorithm for different problems.
  5. Use standard numerical libraries in their own applications.
Reading List
Provided via Learn.
Additional Information
Graduate Attributes and Skills Solution Exploration, Evaluation and Prioritisation.
Computational Science Techniques.
Special Arrangements There are limited spaces on this course. Students not on the MSc in High Performance Computing or MSc High Performance Computing with Data Science should contact the course secretary to confirm availability and confirm that they have the required prerequisites before being enrolled on the course.

The course is available to PhD students for class-only study. PhD students requiring a form of assessment (e.g. SUPA/School of Physics and Astronomy CDT students) must contact the course secretary to confirm method of enrolment.
Additional Class Delivery Information 2 lectures per week (weeks 1-10) plus 1 practical per week (weeks 2-11).
KeywordsNAHPC,Numerical Algorithms,HPC,EPCC,Algebra,Algorithms,Monte Carlo,Computational Science
Course organiserDr Christopher Johnson
Tel: (0131) 650 5846
Course secretaryMiss Jemma Auns
Tel: (0131 6)51 3545
Help & Information
Search DPTs and Courses
Degree Programmes
Browse DPTs
Humanities and Social Science
Science and Engineering
Medicine and Veterinary Medicine
Other Information
Combined Course Timetable
Important Information