Programmering av parallelldatorer

10 hp

Kursplan, Avancerad nivå, 1TD480

Det finns en senare version av kursplanen.
Kod
1TD480
Utbildningsnivå
Avancerad nivå
Huvudområde(n) med fördjupning
Datavetenskap A1N, Teknik A1N, Tillämpad beräkningsvetenskap A1N
Betygsskala
Underkänd (U), godkänd (3), icke utan beröm godkänd (4), med beröm godkänd (5)
Fastställd av
Teknisk-naturvetenskapliga fakultetsnämnden, 19 maj 2014
Ansvarig institution
Institutionen för informationsteknologi

Behörighetskrav

120 hp inklusive matematik 30 hp, Programmeringsteknik II och Beräkningsvetenskap I eller motsvarande.

Mål

Efter godkänd kurs ska studenten kunna:

  • redogöra för olika typer av parallelldatorer;
  • programmera olika typer av parallelldatorer, från bärbara datorer med flerkärniga processorer till storskaliga PC-kluster, dvs. kunna hantera olika programmeringsmodeller;
  • konstruera parallella algoritmer, dels kunna identifiera parallellism i en given algoritm, dels kunna implementera denna parallellism;
  • identifiera de faktorer som begränsar parallellismen i ett program eller algoritm;
  • välja lämplig parallell programmeringsmodell utifrån givna förutsättningar som t.ex. datorarkitektur, tillämpning och effektivitet.

Innehåll

Kursen behandlar olika typer av parallelldatorer, från bärbara datorer med flerkärniga processorer till storskaliga PC-kluster. Klassificering av parallelldatorer: olika typer av minnesorganisation, processorer, nätverk och programkontroll. Olika former av parallellism.

Programmeringsmodeller: programmering i lokal namnrymd med MPI och i global namnrymd med OpenMP och Pthreads (Posix-threads). Orientering om andra programmeringsmodeller och implememtationer, t.ex. UPC (Unified parallel C) och MATLAB Parallel Toolbox. Programmering av grafikkort. Prestandamått: Speedup, effektivitet, flops.

Parallellisering av grundläggande algoritmer i numerisk linjär algebra och inom sortering: matris-vektor-multiplikation och matris-matris multiplikation, Quicksort. Parallellisering av algoritmer inom något av områdena lösning av linjära ekvationssystem, partiella differentialekvationer, molekyldynamik (N-kroppssimulering) eller grafalgoritmer.

Undervisning

Föreläsningar, laborationer och obligatoriska inlämningsuppgifter. Projektarbete. Gästföreläsning.

Examination

Skriftligt prov (6 hp) samt inlämningsuppgifter och projekt (4 hp).

FÖLJ UPPSALA UNIVERSITET PÅ

facebook
instagram
twitter
youtube
linkedin