41391 High Performance Computing: FORTRAN, OpenMP and MPI

2024/2025

Kursusinformation
High Performance Computing: FORTRAN, OpenMP and MPI
Engelsk
5
Ph.d., Servicekursus (faglige færdigheder)
Kurset udbydes som enkeltfag
Januar
3 ugers periode (januar)
Campus Lyngby
Phd. kurset bestaar af 2-3 timers forelæsning per dag, samt 2-3 timers øvelser.
3-uger
Aftales med underviser
Bedømmelse af opgave(r)/rapport(er)
Skriftlige hjælpemidler er tilladt
bestået/ikke bestået , intern bedømmelse
kendskab til unix/linux
Jens Honore Walther , Lyngby Campus, Bygning 403, Tlf. (+45) 4525 4327 , jhwa@dtu.dk
Bernd Dammann , Lyngby Campus, Bygning 303B, Tlf. (+45) 4525 3371 , beda@dtu.dk
41 Institut for Byggeri og Mekanisk Teknologi
01 Institut for Matematik og Computer Science
I studieplanlæggeren
Kontakt underviseren for information om hvorvidt dette kursus giver den studerende mulighed for at lave eller forberede et projekt som kan deltage i DTUs studenterkonference om bæredygtighed, klimateknologi og miljø (GRØN DYST). Se mere på http://www.groendyst.dtu.dk
Overordnede kursusmål
FORTRAN et et af hoved programmeringssprogene indenfor de natur- og teknisks videnskaber og kendskab til FORTRAN er derfor en nødvenlig kompetence for såvel studerende, som forskere og ingeniøerer 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 på mere end 50 års 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 består af et sæt af compiler direktiver, biblioteksfunktioner, samt miljø variable som tillader og understøtter shared memory parallelisme.

Nuværende og fremtidens supercomputers bestaar typisk af klynger af computere (noder), hver med flere kerner (dual, quad, multi-kerner), som deler nodens hukommelsen.

Formålet 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:
  • læse programmer skrevet i FORTRAN
  • skrive programmer i FORTRAN
  • læse programmer med OpenMP direktiver
  • skrive programmer med OpenMP direktiver
  • læse programmer med MPI
  • skrive programmer med MPI
  • forstå forskellen mellem share og distritubed memory parallelitet
  • foretage seriel benchmarking af kode
  • foretage debugging af kode
  • måle parallel effektivitet
  • benytte Amdahls regel
Kursusindhold
Phd. kurset består af 3 dele:
Del I: FORTRAN programmering
Del II: Introduktion til OpenMP
Del III: MPI
Sidst opdateret
19. marts, 2024