DD2356 Metoder inom högprestandaberäkningar 7,5 hp

Methods in High Performance Computing

Visa kursinformation utifrån vald termin och kursomgång:

Kursomgång och genomförande

Ingen kursomgång är vald

Välj termin och kursomgång ovan för att få information från rätt kursplan och kursomgång.

Kursinformation

Innehåll och lärandemål

Kursinnehåll *

Kursen fokuserar på tre områden:

  • Parallelldatorarkitektur och parallell mjukvara. Presentation av beräknings- och minnessystem av parallella datorer. Dessutom beskrivs olika slags parallellitet (på instruktionsnivån, på nivån av beräkningsuppgifter samt dataparallellitet) såväl som prestandamodeller för parallella system.
  • Programmering av flerkärniga system med OpenMP. Presentation av grundläggande såväl som mer avancerade koncept inom OpenMP.
  • Programmering av klustersystem med MPI. Presentation av MPI och metoder för parallellisering av datorprogram.

Hårdvara och mjukvara av olika plattformar på CSC och PDC kommer att introduceras vid första laborationen.

Lärandemål *

Det övergripande syftet med kursen är att ge grundläggande kunskap om teori samt hårdvaru- och mjukvarumetoder för parallella beräkningar, speciellt frågeställningar inom hårdvara och mjukvara samt interaktionen mellan dem. Speciellt fokus kommer att läggas på programmering av flerkärniga processorer och klusterarkitekturer. Även forskningsfrågor inom detta område kommer att tas upp.

Efter godkänd kurs ska studenten kunna:

  • redogöra för egenskaper hos olika parallella arkitekturer,
  • resonera om effektiviteten hos flerkärniga datorer och kluster-system,
  • bedöma potentialen för och begränsningar av parallella beräkningar samt förbättra skalbarhet och effektivitet av parallella beräkningar,
  • välja mellan olika parallelliseringstekniker beroende på tillämpning och det aktuella parallella systemet,
  • skriva parallella program för flerkärniga processorer och klustersystem med OpenMP och MPI.

Kursupplägg

Ingen information tillagd

Kurslitteratur och förberedelser

Särskild behörighet *

Erfarenhet av programmering  i C/C++ och/eller Fortran är nödvändigt.

Rekommenderade förkunskaper

Ingen information tillagd

Utrustning

Ingen information tillagd

Kurslitteratur

Kurslitteraturen kommer att annonseras på kusens hemsida minst 4 veckor före kursstart.

Examination och slutförande

Betygsskala *

A, B, C, D, E, FX, F

Examination *

  • LAB1 - Laborationsuppgifter, 4,5 hp, betygsskala: P, F
  • LAB2 - Projektuppgift, 3,0 hp, betygsskala: A, B, C, D, E, FX, F

Examinator beslutar, baserat på rekommendation från KTH:s samordnare för funktionsnedsättning, om eventuell anpassad examination för studenter med dokumenterad, varaktig funktionsnedsättning.

Examinator får medge annan examinationsform vid omexamination av enstaka studenter.

Möjlighet till komplettering

Ingen information tillagd

Möjlighet till plussning

Ingen information tillagd

Examinator

Erwin Laure

Ytterligare information

Kurswebb

Ytterligare information om kursen kan hittas på kurswebben via länken nedan. Information på kurswebben kommer framöver flyttas till denna sida.

Kurswebb DD2356

Ges av

EECS/Datavetenskap

Huvudområde *

Datalogi och datateknik

Utbildningsnivå *

Avancerad nivå

Påbyggnad

Ingen information tillagd

Kontaktperson

Stefano Markidis markidis@kth.se

Etiskt förhållningssätt *

  • Vid grupparbete har alla i gruppen ansvar för gruppens arbete.
  • Vid examination ska varje student ärligt redovisa hjälp som erhållits och källor som använts.
  • Vid muntlig examination ska varje student kunna redogöra för hela uppgiften och hela lösningen.

Övrig information

Required Reading

Patterson DA, Hennessy JL. Computer organization and design: the hardware / software interface. 5th ed. Oxford: Morgan Kaufmann; 2013 [2014].

I denna kurs tillämpas EECS hederskodex, se:
http://www.kth.se/eecs/utbildning/hederskodex