Durham University
Programme and Module Handbook

Postgraduate Programme and Module Handbook 2025-2026

Module COMP52315: Performance Modelling, Vectorisation and GPU Programming

Department: Computer Science

COMP52315: Performance Modelling, Vectorisation and GPU Programming

Type Tied Level 5 Credits 15 Availability Available in 2025/2026 Module Cap None.
Tied to G5T109
Tied to G5T209
Tied to G5T309
Tied to G5T509
Tied to G5T809

Prerequisites

  • PHYS52015 Introduction to Scientific and High Performance Computing

Corequisites

  • None

Excluded Combination of Modules

  • n/a

Aims

  • Provide advanced knowledge and critical understanding of paradigms, fundamental ideas, algorithms and methods of program performance analysis, modelling and engineering
  • Provide advanced knowledge and critical understanding of low-level code optimisation paradigms, and how they may be applied in real-world scenarios

Content

  • Performance modelling and engineering
  • Vectorisation and low-level code optimisation
  • GPU programming

Learning Outcomes

Subject-specific Knowledge:
  • By the end of this module, students should have:
  • an understanding and critical reflection of advanced ideas and techniques behind the performance analysis of scientific computing and data analysis codes
  • an understanding of modern computer architectures, and how to design and implement codes to perform optimally on this hardware
Subject-specific Skills:
  • By the end of this module, student should:
  • have basic familiarity with state-of-the-art algorithms to solve large-scale and data intense challenges
  • be able to make competent and educated selection and statements on potential performance of specific codes plus skills to improve existing solutions
Key Skills:
  • Familiarity with advanced paradigms and modern algorithms underlying scientific computing for discrete systems, and their analysis
  • Familiarity with programming paradigms for modern wide-vector CPUs, and GPUs

Modes of Teaching, Learning and Assessment and how these contribute to the learning outcomes of the module

  • Teaching will be by computer classes.
  • The computer classes will provide the means to give a concise, focused presentation of the subject matter of the module and where appropriate, will also be supported by the distribution of written material, or by information and relevant links on Ultra.
  • Students will also be given the chance to develop their theoretical understanding and problem solving skills through regular problem exercises delivered within the module teaching sessions.
  • Students will be able to obtain further help in their studies by approaching their lecturers, either after teaching sessions or at other mutually convenient times.
  • Student performance will be summatively assessed through coursework. The assignment consists of a coding exercise with accompanying report.
  • The formative exercises provide opportunities for feedback, for students to gauge their progress and for staff to monitor progress throughout the duration of the module.

Teaching Methods and Learning Hours

Activity Number Frequency Duration Total/Hours
Computer Classes 16 2 per week 2 hours 32
Preparation and Reading 118
Total 150

Summative Assessment

Component: Coursework Component Weighting: 100%
Element Length / duration Element Weighting Resit Opportunity
Assignment 3 weeks 100%

Formative Assessment:

n/a


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