Logga in

Registrera

DAT400 · Chalmers tekniska högskola

Hög-prestanda parallell programmering

Ny kurs

Kom igång gratis

Inga tentor än

Ladda upp dina tidigare tentor och få hjälp med att strukturera ditt studiematerial

Få dina tentauppgifter kategoriseradeBli guidad genom ditt studiematerialFå hjälp direkt med teori och tipsHåll koll på dina framsteg

Kurs info

Kursplan
HP
7.5
Språk
Engelska
Institution
Data- och informationsteknik

Lärandemål

  • Lista de olika typerna av parallella datorarkitekturer, programmeringsmodeller och paradigm, samt olika system för synkronisering och kommunikation.
  • Lista de typiska stegen för att parallellisera en sekventiell algoritm
  • Ange olika metoder för analysmetoder av parallella programsystem
  • Använda metoder för prestandaanalys för att bestämma flaskhalsarna vid exekverandet av ett parallellt program
  • Bestämma den övre gränsen för prestanda för ett parallellt program
  • För en specifik programvara, specificera de resultat flaskhalsar som begränsar effektiviteten hos parallellkoden och välj lämpliga strategier för att övervinna dessa
  • Utforma energibesparande parallelliseringsstrategier baserade på en specifik algoritm struktur och datorsystemsorganisation
  • Argumentera för vilka metoder för prestandaanalys som är viktiga, givet en specifik kontext
Kursinnehåll
Kursen består av ett antal föreläsningar och laborationer. Föreläsningarna börjar med en översikt över parallella datorarkitekturer och parallella programmeringsmodeller och paradigmer. En viktig del av diskussionen är mekanismer för synkronisering och datautbyte. Därefter behandlas prestandaanalys av parallella program. Kursen fortsätter med en diskussion om verktyg och tekniker för att utveckla parallella program enligt modellen för ett delat adressutrymme. Detta avsnitt behandlar populära programmeringsmiljöer som pthreads och OpenMP. Därefter diskuterar kursen parallella program för distribuerat adressutrymme. Fokus i denna del ligger på Message Passing Interface (MPI). Slutligen diskuterar vi programmeringsmetoder för att exekvera applikationer på acceleratorer såsom GPUer. Den här delen introducerar programmeringsmiljön CUDA (Compute Unified Device Architecture). Föreläsningarna kompletteras med en uppsättning laborationer där deltagarna fördjupar sig i ämnesområden som har tagits upp under föreläsningar. Under laborationerna parallelliserar deltagarna exempelprogram över en rad parallella arkitekturer, och använder verktyg för prestandaanalys för att upptäcka och ta bort flaskhalsar i parallella implementeringar av programmen.
Förutsättningar
  • Grundläggande behörighet för avancerad nivå
Litteratur
Parallel Programming for Multicore and Cluster Systems, Thomas Rauber, Gudula Rünger (2nd edition, 2013) https://www.springer.com/gp/book/9783642378003
Liknande kurser vid andra universitet
Kungliga Tekniska högskolan

Kungliga Tekniska högskolan

Programmeringsparadigm

DD13619 tentor
Kungliga Tekniska högskolan

Kungliga Tekniska högskolan

Grundläggande programmering

DD13336 tentor
Högskolan Kristianstad

Högskolan Kristianstad

Grundläggande Programmering

DA110I6 tentor
Redo att boosta dina studier?

Gör som 15 000+ studenter och ta kontroll över ditt tentaplugg.

Kom igång gratis

Produkt

  • Priser

  • Karriär

Företag

  • Om oss

  • Guider

  • Användarvillkor

  • Integritet

  • Support

Universitet

  • KTH

  • Uppsala universitet

  • Linköpings universitet

  • Chalmers

  • Lunds universitet

  • Luleå tekniska universitet

  • Stockholms universitet

  • Gymnasiet

Socialt

  • Instagram

  • Facebook

  • YouTube

  • TikTok

  • Linkedin

© 2026 Crash Course Sverige AB