Kursplan för Parallell och distribuerad programmering

Parallel and Distributed Programming

Kursplan

  • 5 högskolepoäng
  • Kurskod: 1TD070
  • Utbildningsnivå: Avancerad nivå
  • Huvudområde(n) och successiv fördjupning: Tillämpad beräkningsvetenskap A1F, Datavetenskap A1F, Teknik A1F

    Förklaring av koder

    Koden visar kursens utbildningsnivå och fördjupning i förhållande till andra kurser inom huvudområdet och examensfordringarna för generella examina:

    Grundnivå

    • G1N: har endast gymnasiala förkunskapskrav
    • G1F: har mindre än 60 hp kurs/er på grundnivå som förkunskapskrav
    • G1E: innehåller särskilt utformat examensarbete för högskoleexamen
    • G2F: har minst 60 hp kurs/er på grundnivå som förkunskapskrav
    • G2E: har minst 60 hp kurs/er på grundnivå som förkunskapskrav, innehåller examensarbete för kandidatexamen
    • GXX: kursens fördjupning kan inte klassificeras

    Avancerad nivå

    • A1N: har endast kurs/er på grundnivå som förkunskapskrav
    • A1F: har kurs/er på avancerad nivå som förkunskapskrav
    • A1E: innehåller examensarbete för magisterexamen
    • A2E: innehåller examensarbete för masterexamen
    • AXX: kursens fördjupning kan inte klassificeras

  • Betygsskala: Underkänd (U), godkänd (3), icke utan beröm godkänd (4), med beröm godkänd (5)
  • Inrättad: 2016-03-10
  • Inrättad av: Teknisk-naturvetenskapliga fakultetsnämnden
  • Reviderad: 2022-01-14
  • Reviderad av: Teknisk-naturvetenskapliga fakultetsnämnden
  • Gäller från: vecka 27, 2022
  • Behörighet: 120 hp inom teknik/naturvetenskap inklusive Introduktion till beräkningsvetenskap eller Beräkningsvetenskap I. Högprestandaprogrammering eller Lågnivå-parallellprogrammering. Engelska 6. (Med en svensk kandidatexamen uppfylls kravet på engelska.)
  • Ansvarig institution: Institutionen för informationsteknologi

Mål

Efter godkänd kurs ska studenten kunna:

  • utveckla program med distribuerad parallellism, inklusive parallell felsökning;
  • konstruera parallella algoritmer, det vill säga identifiera parallellism i en given algoritm samt implementera denna parallellism;
  • analysera egenskaper, exempelvis effektivitet, uppsnabbning, hos parallella algoritmer;
  • analysera prestanda hos parallella algoritmer.

Innehåll

Klassificering av parallelldatorer: olika typer av minnesorganisation, processorer, nätverk och programkontroll. Olika former av parallellism. MPI-programmering (Message Passing Interface) och datapartitionering. Parallellisering av grundläggande algoritmer i numerisk linjär algebra och beräkningsvetenskap: matris-vektor-multiplikation, matris-matris-multiplikation, FFT (snabba Fouriertransformen), N-kroppssimulering, grafalgoritmer.

Undervisning

Föreläsningar, laborationer, inlämningsuppgifter och projektuppgifter.

Examination

Inlämnings- och projektuppgifter som redovisas skriftligt och muntligt.

Om särskilda skäl finns får examinator göra undantag från det angivna examinationssättet och medge att en enskild student examineras på annat sätt. Särskilda skäl kan t.ex. vara besked om särskilt pedagogiskt stöd från universitetets samordnare för studenter med funktionsnedsättning.

Övriga föreskrifter

Kursen kan ej räknas i examen tillsammans med 1TD480 Programmering av parallelldatorer.

Versioner av kursplanen

Litteratur

Litteraturlista

Gäller från: vecka 27, 2022

I bibliotekets söktjänst kan du se om en titel finns elektroniskt.

  • Pacheco, Peter. An Introduction to Parallel Programming.

    Burlington: Elsevier Science, 2011.

    Se bibliotekets söktjänst

    Obligatorisk