TIES5302 Rinnakkaistietokoneista ja niiden ohjelmointimalleista (5 op)
Osaamistavoitteet
Opintojakson hyväksytysti suoritettuaan opiskelija tietää yleisimmät rinnakkaislaskennan paradigmat ja laskentamallit, osaa ohjelmoida yksinkertaisia C/MPI-ohjelmia viestinvälitystä käyttäville rinnakkaiskoneille ja osaa ohjelmoida yksinkertaisia C/CUDA-ohjelmia grafiikkasuorittimelle.
Suoritustavat
Kirjallisten oppimistehtävien hyväksytty suoritus
Sisältö
1. UNIX-käyttöjärjestelmän perusteet
2. C-ohjelmointikielen perusteet
3. Rinnakkaislaskennan paradigmoista ja laskentamalleista
3.1. Mooren laki
3.2. Flynnin taksonomia
3.3. Data-, käsky- ja säietason rinnakkaisuus
3.4. Skaalautuvuus
3.5. Hajautetun ja yhteisen muistin laitteet
4. MPI-ohjelmoinnin perusteita
4.1. Johdantoa MPI-ohjelmoitimalliin
4.2. Point-to-point kommunikaatio
4.2. Kollektiivinen kommunikaatio
4.3. Laskennan tehokkuudesta
5. CUDA-ohjelmoinnin perusteita
5.1. CUDA-ohjelmointimalli
5.2. Laitekoodi ja ytimet
5.3. Muistihierarkia
5.4. Perusalgoritmeja
5.5. Laskennan tehokkuudesta
Arviointiperusteet
Hyväksytty suoritus edellyttää kirjallisten oppimistehtävien palauttamista ja hyväksyttyä suorittamista. Kirjalliset oppimistehtävät pisteytetään ja näistä saatu pistemäärä määrittää kurssin arvosanan.