studiehandbok@lith   Länk till universitetets hemsida
 

Tekniska högskolan vid Linköpings universitet

Länk till universitetets hemsida
 
År : 2002
 
TDDB78 Programmering av parallelldatorer - inbyggda system, 4 p
/Programming of Parallel Computers - Methods and tools/

För:   C   D   IT   Y  

  Utbildningsområde: Teknik

Ämnesgrupp: Datalogi, Datateknik   Nivå (A-D):D

  Datavetenskap Datavetenskap, datalogi.

  Mål:
Att ge kunskap om metoder och språk för programmering av parallella datorarkitekturer, samt färdighet att programmera sådana datorer. Kursen skall även ge inblick i hur parallelldatorer kan användas för några tillämpningsområden, t.ex. bildanalys och tekniska beräkningar.

  Förkunskaper: (gäller studerande antagna till program som kursen ges inom, se 'För:' ovan)
Grundkurser i programmering. Det rekommenderas en kurs i processprogrammering eller liknande (t.ex. TDDB12), eftersom förståelse för processbegreppet förutsätts. Programmeringsövningar erfordrar programmeringskunskaper i C/C++.

OBS! Tillträdeskrav för icke programstudenter omfattar vanligen också tillträdeskrav för programmet och ev. tröskelkrav för progression inom programmet, eller motsvarande.

  Organisation:
Kursen ges i två varianter, med största delen gemensam. Inriktningen metoder och verktyg, beteckning TDDB78, beskrivs här, medan inriktningen tekniska beräkningar, med kursbeteckning TANA77, återfinnes bland matematiska institutionens kurser i studiehandboken. Föreläsningarna behandlar teori och principer, medan laborationerna ger praktiska övningar i parallell programmering och användning av lämpliga verktyg. Föreläsningarna är gemensamma för båda inriktningarna medan laborationskursen för TDDB78 och TANA77 skiljer sig.

  Kursinnehåll:
Arkitekturen hos parallelldatorsystem: Minneshierarkier, delat minne samt distribuerade minnesarkitekturer. Vektoroperationer. Parallella exekveringsmodeller och språk. Prestandamätning och uppsnabbning. Meddelandesändningsbaserad programmering, multithreading respektive dataparallell programmering. Principer för data-parallella språk. Tidskomplexitet. Skalbarhet. Schemaläggning av parallellprogram. Vektorisering och parallellisering av seriella program. Verktyg för parallellprogrammering. MPI (Message Passing Interface), HPF (High Performance Fortran) och OpenMP. Grundläggande parallella numeriska algoritmer och BLAS (Basic Linear Algebra Subprograms). Tillämpningsområden för parallellprogrammering. Parallell lösning av ekvationssystem. Laborationskursen ger praktisk kunskap om programmering av parallella datorsystem, olika programmeringsparadigmer används. Fyra olika parallelldatorer används i laborationskursen, inklusive en 272 processors Cray T3E och en 96 processors SGI Origin 3800 vid National Supercomputer Center.

  Kurslitteratur:
Ian T. Foster: Designing and Building Parallel Programs , Addison-Wesley, 1995. Kompendium.

  Examination:
TEN1
LAB1
En skriftlig tentamen.
En laborationskurs.
2 p
2 p
 



Undervisningsspråk är Engelska.
Institution: IDA.
Studierektor:
Examinator:
Länk till kurshemsida på kursgivande institution
Ansvarig utbildningsnämnd: UND

Engelsk kursplan
Om inget annat anges ovan gäller betygsskala enligt avsnitt a8.5 i de gemensamma bestämmelserna.
Kursplanen gäller för 2002 enligt beslut av utbildningsnämnden i november 2001.


Tekniska högskolan vid Linköpings universitet

Länk till sidans topp


Informationsansvarig: TFK , val@tfk.liu.se
Senast ändrad: 04/27/2004