Low-Level Parallel Programming

5 credits

Syllabus, Master's level, 1DL550

A revised version of the syllabus is available.
Code
1DL550
Education cycle
Second cycle
Main field(s) of study and in-depth level
Computer Science A1N
Grading system
Pass with distinction, Pass with credit, Pass, Fail
Finalised by
The Faculty Board of Science and Technology, 13 March 2014
Responsible department
Department of Information Technology

Entry requirements

120 credits including 60 credits in computer science, including a second course in computer programming and programming in C.

Learning outcomes

To pass the course, the student should be able to

  • explain key issues of parallel programming, including data distribution, load balancing, locking and synchronisation
  • construct parallel algorithms, i.e., identify parallelism in a given algorithm, implement this parallelism, and identify factors that limit the parallelism in a program or algorithm
  • compare several parallel programming frameworks in terms of performance and efficiency of development
  • use several high-performance parallel programming frameworks and choose an appropriate framework under given circumstances such as computer architecture, application and efficiency

Content

Introduction to parallel programming and hardware. Key issues such as data distribution, load balancing, locking and synchronisation. Parallel and concurrent algorithms, factors that limit parallelism. Different parallel programming frameworks, and their pros and cons, are introduced and compared.

Instruction

Lectures and seminars. Mandatory lectures may occur.

Assessment

Active participation in seminars. Oral and written assessment of assignments and project.

No reading list found.

FOLLOW UPPSALA UNIVERSITY ON

facebook
instagram
twitter
youtube
linkedin