02614 High-Performance Computing

2020/2021

Kursusinformation
High-Performance Computing
Engelsk
5
Kandidat
Januar
Campus Lyngby
Forelæsning, computerøvelser og computerprojekter.
3-uger
Bedømmelse af opgave(r)/rapport(er)
Bedømmelse af individualiserede grupperapporter.
7-trins skala , intern bedømmelse
02635 , Erfaring med programmering i C/C++ samt kendskab til numeriske beregninger. Kendskab til Linux/Unix kommandolinien og kodning af shell-scripts.
Maksimum: 50
Bernd Dammann , Lyngby Campus, Bygning 303B, Tlf. (+45) 4525 3371 , beda@dtu.dk
01 Institut for Matematik og Computer Science
I studieplanlæggeren
Overordnede kursusmål
Fremkomsten af effektive multi-core computere har givet forskere muligheder for at udføre komplicerede simuleringer på økonomisk overkommeligt hardware, men kun få af anvendelserne udnytter mulighederne tilstrækkeligt godt. Dette skyldes mangel på viden og erfaring i at skrive effektive programmer til high-performance computere med moderne arkitekturer.
Kurset sætter deltagerne i stand til at arbejde med større beregningsproblemer i Scientific Computing, og deres implementering på moderne cache-baserede multi-core/multi-CPU computere. Kurset indeholder desuden en introduktion og praktiske øvelser i at anvende CUDA programmeringsmodellen for heterogene CPU-GPU systemer.
Dette kursus giver en introduktion til de færdigheder, der kræves for at udnytte mulighederne i high-performance computing. Det giver viden om organisering og analyse af software og præsenterer metoder og værktøjer til dette.
Læringsmål
En studerende, der fuldt ud har opfyldt kursets mål, vil kunne:
  • forklare de fundamentale byggeklodser af moderne cache-baserede computer systemer samt højtydende grafikkort
  • udnytte vekselvirkning mellem komponenter som CPU, GPU, caches og memory
  • analysere Scientific Computing problemer
  • anvende optimeringsteknikker på eksisterende koder
  • designe parallelle koder for Scientific Computing problemer
  • skrive parallelle programmer med OpenMP og CUDA
  • skrive effektive koder til multi-kerne processorer og mange-kerne grafikkort
  • anvende moderne værktøjer til parallelprogrammering
  • udføre og dokumentere computer eksperimenter
Kursusindhold
Introduktion til højtydende computere med vægt på de aspekter der bestemmer computerens ydeevne ved numeriske beregninger for store problemer. Parallelle computere og grafikkort: arkitektur og netværk, med vægt på multi-kerne og SMP computere. Parallel-programmering med OpenMP samt CUDA.
Bemærkninger
Programmering og implementering af C/C++ kode udgør en væsentlig del af kurset, og derfor anbefales at man har fulgt kursus 02635 (eller et lignende kursus) før man tager dette kursus! Kontakt venligst den kursusanvarlige for at høre mere om forudsætninger.
Undervisningsmaterialet består af udleverede noter.
Kurset henvender sig til studerende fra alle master programmer. Kurset er en forudsætning for kurset 02616 Storskala modellering.
Sidst opdateret
05. maj, 2020