| TANA77 |
Programming of Parallel Computers, scientific computations, 6 ECTS credits.
/Programmering av parallelldatorer, tekniska beräkningar/
For:
C
D
IT
M
Mat
Y
|
| |
Area of Education:
Subject area:
|
| |
Advancement level
(A-D): D
|
|
Aim:
To give knowledge about methods and languages for programming parallel computer architectures, together with skills to program such computers. 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.
|
|
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:
Two variants of the course are given, where the main part is the same. The variant Scientific Computations, TANA 77 is described here, and the other variant Methods and Tools, TDDB 78 can be found among the courses given by the computer science department. 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.
Vectorization and parallelization of serial codes. Tools
for parallel programming. MPI (Message Passing Interface), HPF (High Performance Fortran) and OpenMP.
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:
Ian T. Foster, "Designing and Building Parallel Programs", Addison-Wesley, 1995. Compendium.
|
|
Examination: |
|
Written examination Laboratory work |
2 p 2 p
|
| |
|
|
Course language is English.
Department offering the course: MAI.
Director of Studies:
Examiner: Lars Eldén
Course Syllabus in Swedish
|