Hoppa till huvudinnehållet

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

Välj termin och kursomgång

Välj termin och kursomgång för att se aktuell information och mer om kursen, såsom kursplan, studieperiod och anmälningsinformation.

Kursval

Gäller för kursomgång

VT 2025 methpc25 programstuderande

Anmälningskod

61615

Rubriker med innehåll från kursplan DD2356 (VT 2019–) är markerade med en asterisk ( )

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.

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

När kurs inte längre ges har student möjlighet att examineras under ytterligare två läsår.

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 handläggare av stöd till studenter med 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

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.

Ytterligare information

Kursrum i Canvas

Registrerade studenter hittar information för genomförande av kursen i kursrummet i Canvas. En länk till kursrummet finns under fliken Studier i Personliga menyn vid kursstart.

Ges av

Huvudområde

Datalogi och datateknik

Utbildningsnivå

Avancerad nivå

Påbyggnad

Ingen information tillagd

Kontaktperson

Stefano Markidis markidis@kth.se

Ö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