Search programme

​Use the search function to search amongst programmes at Chalmers. The study programme and the study programme syllabus relating to your studies are generally from the academic year you began your studies.

Syllabus for

Academic year
TMA881 - High performance computing
Högprestandaberäkning
 
Syllabus adopted 2019-02-22 by Head of Programme (or corresponding)
Owner: MPENM
7,5 Credits
Grading: TH - Pass with distinction (5), Pass with credit (4), Pass (3), Fail
Education cycle: Second-cycle
Major subject: Mathematics
Department: 11 - MATHEMATICAL SCIENCES

The course is full. For waiting list, please contact the director of studies: norbeck@chalmers.se
Teaching language: English
Application code: 20122
Open for exchange students: Yes
Maximum participants: 120

Module   Credit distribution   Examination dates
Sp1 Sp2 Sp3 Sp4 Summer course No Sp
0101 Examination 7,5c Grading: TH   7,5c   Contact examiner,  Contact examiner,  Contact examiner

In programs

MPDSC DATA SCIENCE AND AI, MSC PROGR, Year 1 (compulsory elective)
MPDSC DATA SCIENCE AND AI, MSC PROGR, Year 2 (elective)
MPPHS PHYSICS, MSC PROGR, Year 2 (elective)
MPCAS COMPLEX ADAPTIVE SYSTEMS, MSC PROGR, Year 2 (elective)
MPCAS COMPLEX ADAPTIVE SYSTEMS, MSC PROGR, Year 1 (compulsory elective)
MPENM ENGINEERING MATHEMATICS AND COMPUTATIONAL SCIENCE, MSC PROGR, Year 1 (compulsory)

Examiner:

Martin Raum

  Go to Course Homepage


Eligibility

General entry requirements for Master's level (second cycle)
Applicants enrolled in a programme at Chalmers where the course is included in the study programme are exempted from fulfilling the requirements above.

Specific entry requirements

English 6 (or by other approved means with the equivalent proficiency level)
Applicants enrolled in a programme at Chalmers where the course is included in the study programme are exempted from fulfilling the requirements above.

Course specific prerequisites

Basic courses in mathematics, numerical analysis,
programming and data structures. Basic Matlab programming.

Aim

One aim of the course is to provide an insight into computer architecture and the effect it has on the performance of computer programs. The course also aims to provide the student with tools and techniques for code optimization and for parallel programming.

Learning outcomes (after completion of the course the student should be able to)

After completing the course the student will be able to
  • organize programming work on a remote computer using Linux command line tools
  • write simple parallel programs using MPI, OpenMP, or OpenCL
  • describe the basic features of CPUs, GPUs, FPGAs, and hardware accelerators
  • assess the influence of hardware and software on runtime performance.

Content

  • Short introduction to C and Python to the extent that is necessary for the computer labs.
  • Linux command line tools.
  • Parallel programming using threads, OpenMP, MPI, and OpenCL.
  • Hardware architecture.
  • Code optimization and compiler flags.
  • Overview of libraries in numerical analysis.

Organisation

Lectures and computer assignments. The assignments, which make up a substantial part of the course, consist of several short exercises which illustrate how performance is affected by the choice of computer architecture, programming language, data structures etc. The programs should be written in C and Python. Please see the course homepage for more information.

Literature

Lecture notes, manuals and articles.

Examination including compulsory elements

The examination consists of computer based assignments, a short presentation and a take-home exam.


Published: Mon 28 Nov 2016.