2015/2016

02347 Parallelle systemer

Engelsk titel:

Parallel systems

Sprog:

Point( ECTS )

5

Kursustype:

Diplomingeniør
 

Skemaplacering:

F1B (tors 13-17)

Undervisningens placering:

Campus Lyngby

Undervisningsform:

Gruppeaktiviteter, opgaver og programmeringsøvelser. Det er ønskeligt, at deltagere gennem kurset tillægger sig engelske fagtermer samt kan udtrykke sig om fagets faglighed på engelsk, hvorfor dele af kursets undervisning foregår på engelsk.

Kursets varighed:

13-uger

Eksamensplacering:

F1B

Evalueringsform:

Eksamens varighed:

Hjælpemidler:

Bedømmelsesform:

Tidligere kursus:

02333

Anbefalede forudsætninger:

,

Overordnede kursusmål:

Kurset fokuserer på en bred introduktion til parallelprogrammering med fokus på anvendelig viden. Kurset introducerer industristandarder som MPI, OpenMP og OpenCL. Bredt tilgængelige arkitekturer der understøtter parallelitet studeres, inklusiv systemer for indlejret og mobil brug.

Fundamental og praktisk teori som programmeringsmodeller, performance-modeller og programmeringsmønstre studeres.

Målet med kurset er at de studerende vil være i stand til at løse simple parallelprogrammerings opgaver som at gøre et program race-free og tage en lille del af et sekventielt program og gøre det parallelt ved at bruge industristandard parallelprogrammeringssystemer. Studerende vil også være i stand til empirisk at evaluere performance af det parallelle system.

Læringsmål:

En studerende, der fuldt ud har opfyldt kursets mål, vil kunne:
  • kategorisere parallelle computersystemer.
  • forklare performance-påvirkningen af hukommelseshierarkiet.
  • skrive små parallelprogrammer ved hjælp af industristandard parallelprogrammeringssystemer.
  • skitsere principperne for almene parallelle programmeringsmodeller.
  • bruge synkroniseringsmekanismer til at skrive race-free programmer.
  • bruge message-passing til at skrive distribuerede parallelle programmer.
  • evaluere performance af parallelle programmer og computersystemer ved hjælp af empiriske metoder.
  • identificere flaskehalse i parallelle computersystemer.

Kursusindhold:

Parallelle computersystemer: Flynn's taksonomi, udfordringer ved parallelle computersystemer, multi-core systemer, GPUer, acceleratorer, effekter fra cache og hukommelseshierarki.
Parallelle programmeringsmodeller: message-passing modeller, delt-hukommelse modeller, task-modeller, dataparallelle modeller.
Synkronisering af tråde og processer: message-passing, gensidig udelukkelse, race conditions, mutexer, semaforer, transaktioner.
Parallelle programmeringsmønstre: fork-join, master-slave, parallelle datastrukturer.
Parallelle programmeringssystemer: MPI, OpenMP, OpenCL, trådbiblioteker.
Performancemodeller og -analyser: Amdahls lov, empirisk performanceanalyse.

Mulighed for GRØN DYST deltagelse:

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

Kursusansvarlig:

Sven Karlsson , Lyngby Campus, Bygning 322, Tlf. (+45) 4525 3754 , svea@dtu.dk

Institut:

01 Institut for Matematik og Computer Science

Tilmelding:

I CampusNet
Sidst opdateret: 03. juli, 2015