41391 High Performance Computing: FORTRAN, OpenMP and MPI
Engelsk titel:
High Performance Computing: FORTRAN, OpenMP and MPI
Sprog:
Point
(ECTS )
5
Kursustype:
Ph.D.- Konstruktion, Produktion, Byggeri og Transport, Matematik, Fysik og Informatik, Kemi, Bioteknologi og Kemiteknik, Elektronik, Kommunikation og Rumforskning, Life Science
Skemaplacering:
3 ugers periode (januar)
Undervisningsform:
Phd. kurset bestaar af 2-3 timers forelaesning per dag, samt 2-3 timers oevelser.
FORTRAN et et af hoved programmeringssprogene indenfor de natur- og teknisks videnskaber og kendskab til FORTRAN er derfor en noedvenlig kompetence for saavel studerende, som forskere og ingenioerer generelt. Med de to sidste revisioner af sproget har FORTRAN fulgt med udviklingen og kravene til moderne programmeringssprog. De fleste harware udbydere (IBM, HP, SGI, Intel, Sun, Cray) tilbyder effektive FORTRAN compilere, baseret paa mere end 50 aars erfaring.
MPI (Message Passing Interface) er de-facto standard til programmeting af kode til distributeret memory computer arkitekturer. MPI kan kaldes fra C/C++ og FORTRAN, og er porteret til alle massivt-parallel supercomputers.
OpenMP (Open Multi-Processing) er et standard Application Programming Interface (API) til programmering af shared memory multiprocessing i C/C++ and FORTRAN. OpenMP bestaar af et saet af compiler direktiver, biblioteksfunktioner, samt miljoe variable som tillader og understoetter shared memory parallelisme.
Nuvaerende og fremtidens supercomputers bestaar typisk af klynger af computere (noder), hver med flere kerner (dual, quad, multi-kerner), som deler nodens hukommelsen.
Formaalet med kurset er at skitsere strategier til portering, og udvikling af effektiv, portabel og veldokumentet kode til denne hybride computer arkitektur.
Læringsmål:
En studerende, der fuldt ud har opfyldt kursets mål, vil kunne:
laese programmer skrevet i FORTRAN
skrive programmer i FORTRAN
laese programmer med OpenMP direktiver
skrive programmer med OpenMP direktiver
laese programmer med MPI
skrive programmer med MPI
forstaa forskellen mellem share og distritubed memory parallelitet
foretage seriel benchmarking af kode
foretage debugging af kode
maale parallel effektivitet
benytte Amdahls regel
Kursusindhold:
Phd. kurset bestaar af 3 dele: Del I: FORTRAN programmering Del II: Introduktion til OpenMP Del III: MPI