Programming of Parallel Computers

10 credits

Syllabus, Master's level, 1TD480

A revised version of the syllabus is available.
Code
1TD480
Education cycle
Second cycle
Main field(s) of study and in-depth level
Computational Science A1N, Computer Science A1N, Technology A1N
Grading system
Fail (U), Pass (3), Pass with credit (4), Pass with distinction (5)
Finalised by
The Faculty Board of Science and Technology, 12 May 2009
Responsible department
Department of Information Technology

Entry requirements

120 credits where 30 credits mathematics, Computer Programming II and Scientific Computing I or the equivalent is covered.

Learning outcomes

To pass, the student should be able to

  • describe different types of parallel computers;
  • program different types of parallel computers, from multicore LapTops to large scale PC clusters, i.e. handle different programming models
  • construct parallel algorithms, i.e. identify parallelism in a given algorithm as well as implement that particular parallelism
  • identify factors that put constraints on the parallelism in a given program or algorithms
  • choose the appropriate parallel programming model factoring in conditions as computer architecture, application and efficiency

Content

The course focus on different types of parallel computers, from multicore LapTops to large scale PC clusters. Classification of parallel computers. Different forms of memory organisation, processors, networks, program control. Different forms of parallelism. Programming models: Programming in a local name space with MPI and in a global name space with OpenMP and Pthreads (Posix-threads). Grid computing and middleware. Performance measurements: speedup, efficiency, flops. Parallelisation of basic algorithms in numerical linear algebra: matrix-vector multiplication and matrix-matrix multiplication. Parallelisation of algorithms in areas such as solution of dense systems of linear equations, graph algorithms or searching and sorting.

A project is included in the course.

Instruction

Lectures, laboratory work and compulsory assignments.

Assessment

Written examination at the end of the course and approved compulsory assignments.

FOLLOW UPPSALA UNIVERSITY ON

facebook
instagram
twitter
youtube
linkedin