Programmering av parallelldatorer
Kursplan, Avancerad nivå, 1TD480
Kursen är avvecklad.
- 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, 15 juni 2012
- 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). Programmering av grafikkort. Prestandamått: Speedup, effektivitet, flops. Diskussion om brister med dessa mått, samt förslag till alternativ.
Parallellisering av grundläggande algoritmer i numerisk linjär algebra: matris-vektor-multiplikation och matris-matris multiplikation. Parallellisering av algoritmer inom några av områdena lösning av fyllda linjära ekvationssystem, grafalgoritmer eller sökning och sortering.
I kursen ingår ett projektarbete.
Undervisning
Föreläsningar, laborationer och obligatoriska inlämningsuppgifter. Gästföreläsning.
Examination
Skriftligt prov (6 hp) samt inlämningsuppgifter (4 hp).