Programming Parallel Computers

Lecture 1

The lecture videos are available both on Panopto and on YouTube, in up to 4K resolution, with English and Finnish subtitles. The slides are also available in the PDF format.

Lectures

YouTube playlist with all parts of the lecture.

Part 1A: What is this course about? · Why parallelism? (14 min)

Part 1B: Course practicalities (10 min)

Part 1C: Sample application · Memory access pattern (14 min)

Part 1D: Instruction-level parallelism (12 min)

Topics covered

Terminology

EnglishFinnish
accumulatekoota (yhteen)
arithmetic operationaritmeettinen operaatio
arraytaulukko
benchmarksuorituskyvyn mittaus, suorituskykymittaus
benchmarkingvertailuanalyysi
bottleneckpullonkaula
cache memoryvälimuisti
cache memory hierarchyvälimuistihierarkia
chainsarja
clock cyclekellojakso
computational problemlaskennallinen ongelma
coreydin
costhinta, kustannus
CPUprosessori, suoritin
CPU coreprosessoriydin, suoritinydin
CPU registerrekisteri
dependency chainriippuvuusketju
execution unitsuoritusyksikkö
floating-point multiplicationliukulukulaskenta, (yksi) liukulukulasku
GPUgrafiikkaprosessori, grafiikkasuoritin
hardwarelaitteisto
in parallelrinnakkain
input datasyöttötiedot, syötedata, datasyöte
input matrixsyötematriisi
input sizesyötekoko
instruction level parallelismkäskytason rinnakkaisuus
interleavedlimittynyt
latencylatenssi
linear readinglineaarinen lukutapa, lukeminen
linked listlinkitetty lista
machine language instructionkonekielinen käsky
machine language operationkonekielinen operaatio
main memorykeskusmuisti
massively parallelmassiivisesti rinnakkainen
matrixmatriisi
memory access patternmuistista hakeminen
memory cellmuistisolu
multicoremoniytiminen
multithreadingusealla säikeellä tehtävä laskenta
operationkäsky, operaatio
optimization flagoptimointilippu
parallel computerrinnakkaistietokone
parallel performancerinnakkaisten prosessien suorituskyky
parallel programmingrinnakkaisohjelmointi
parallel throughputrinnakkainen läpäisy
parallelismrinnakkaisuus
performancesuoritusteho, suorituskyky
pipelineliukuhihna
pipeliningliukuhihnoitus
processing powerlaskentateho
processorprosessori, suoritin
result matrixtulosmatriisi
sequentialperäkkäin
sequential computersekventiaalisesti toimiva tietokone
sequential operationperättäinen operaatio
sequential performanceperäkkäinen suorituskyky, peräkkäisten prosessien suorituskyky
sequential throughputperäkkäinen läpäisy
simultaneouslysamanaikaisesti
single-precision floating pointyksinkertaisen tarkkuuden liukuluku
superscalarsuperskalaarinen
theoretical maximum performanceteoreettinen maksimisuorituskyky
throughputsuoritusteho, läpäisy
transistortransistori
transposetranspoosi
unroll (a loop)purkaa silmukka
vector operationvektorioperaatio
vectorizationvektorointi