| TANA77 |
Programming of Parallel Computers, Scientific Computations, 6 ECTS credits.
/Programmering av parallelldatorer, tekniska beräkningar/
For:
C
COM
COS
CS
D
IT
MMAT
MT
SOC
Y
|
OBS! |
The course overlaps with TDDC78. Only on of these courses may be included in the exam.
|
| |
Prel. scheduled
hours: 52
Rec. self-study hours: 108
|
| |
Area of Education: Science
Subject area: Mathematics
|
| |
Advancement level
(G1, G2, A): A
|
|
Aim:
Parallel computers are used for heavy computations. The student should
acquire knowledge about the programming of parallel computers and
master selected methods and tools. The course shall also give an
overview of how parallel computers can be used in some application
areas, e.g. scientific computations and image analysis. After the
course the student is expected to be able to 1) use efficient methods
and languages for the programming of parallel computers, 2) program
parallel computers with distributed memory (MPI) and shared memory
(OpenMp)
|
|
Prerequisites: (valid for students admitted to programmes within which the course is offered)
Basic courses in programming and numerical methods. Fortran (TANA 70 or NMAB15) is recommended.
Note: Admission requirements for non-programme students usually also include admission requirements for the programme and threshhold requirements for progression within the programme, or corresponding.
|
|
Organisation:
The lectures deal with theory and principles, and the laboratory course give practical exercise in parallel programming and the use of support systems. The lectures are the same for both variants, while the laboratory courses for TANA77 and TDDB78 differ.
|
|
Course contents:
Parallel computer architecture: memory hierarchies,
shared memory and distributed memory architectures. Vector instructions.
Parallel execution models and programming languages. Performance measurement and enhancement.
Message passing, multithreaded and dataparallel programming. Principles of data parallel languages. Time complexity. Scalability. Scheduling of parallel programs.
Tools
for parallel programming. MPI (Message Passing Interface), HPF (High Performance Fortran) and OpenMP. Grid computing.
Basic parallel algorithms and BLAS (Basic Linear Algebra Subprograms).
Application areas. Parallel solving of equation systems. The laboratory course gives practical experience in programming parallel systems (different programming paradigms are used). Four Different parallel computers including a 272-processors Cray T3E and 96-processors SGI Origin 3800 at National Supercomputer Center are used in the laboratory course.
|
|
Course literature:
L. Elde'n, Scientific computing on high performance computers, Lecture Notes, Edition 2005.
C. Kessler, Programming of parallel computers - Compendium OHs, Edition 2005.
|
|
Examination: |
|
Written examination Laboratory work |
3 ECTS 3 ECTS
|
| |
|
|
Course language is English.
Department offering the course: MAI.
Director of Studies: Torbjörn Larsson
Examiner: Lars Eldén
Link to the course homepage at the department
Course Syllabus in Swedish
|