Kursplan för |
|
TMA881 - Högprestandaberäkning |
|
Kursplanen fastställd 2010-02-26 av programansvarig (eller motsvarande) |
Ägare: MPENM |
|
7,5 Poäng |
Betygskala: TH - Fem, Fyra, Tre, Underkänt |
Utbildningsnivå: Avancerad nivå |
Huvudområde: Matematik
|
Institution: 11 - MATEMATISKA VETENSKAPER
|
Undervisningsspråk: Engelska
Sökbar för utbytesstudenter
Blockschema:
X
Modul |
|
Poängfördelning |
|
Tentamensdatum |
Lp1 |
Lp2 |
Lp3 |
Lp4 |
Sommarkurs |
Ej Lp |
0101 |
Tentamen |
7,5 hp |
Betygskala: TH |
|
|
|
|
7,5 hp
|
|
|
|
Kontakta examinator |
I program
MPAPP APPLIED PHYSICS, MSC PROGR, Årskurs 1 (valbar)
MPENM ENGINEERING MATHEMATICS AND COMPUTATIONAL SCIENCE, MSC PROGR, Årskurs 2 (valbar)
Examinator:
Univ lektor
Thomas Ericsson
Gå till kurshemsida
Behörighet:
För kurser inom Chalmers utbildningsprogram gäller samma behörighetskrav som till de(t) program kursen ingår i.
Kursspecifika förkunskaper
Basic courses in mathematics, numerical analysis,
programming and data structures. Basic Matlab programming.
Syfte
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.
Lärandemål (efter fullgjord kurs ska studenten kunna)
- describe the basic features of a modern CPU
and analyze how these affect the performance of a code
- optimize code written in Fortran or C
- optimize Matlab code
- use basic unix tools such as make, gprof and ld
- mix Fortran, C and Matlab (mixed language programming)
- write simple parallel programs using MPI and OpenMP.
Innehåll
- A short introduction to Fortran and C (what is necessary for the labs). Unix-tools.
- Computer architecture. A look at the design of a modern CPU.
- Code optimization for one CPU. Profiling tools, choice of programming language.
- Parallel programming using threads, OpenMP and MPI.
- High performance numerical libraries.
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, programming style etc. One should optimize a given code. In some exercises small parallel programs should be written. The programs should be written in C, Fortran (some Java) and Matlab. Please see the course homepage for more information.
Litteratur
Lecture notes, manuals and articles.
Examination
Compulsory computer assignments. A written or oral examination and possibly a short presentation.