8. Task and data parallelism
Task parallelism:
distributed
processing
distributed memory
message passing
9. Task and data parallelism
Task parallelism:
distributed
processing
distributed memory
message passing
Data parallelism:
same instruction on
different data
shared memory
17. Matrix-matrix multiplication
cij = aik bkj
k
Cij = Aik Bkj
k
Multiplication kernel:
initialize element of
Cij = 0
for each k:
fetch element of
Aik , Bkj into shared
memory
synchronize
compute element
of Cij = Cij + Aik Bkj
synchronize