
342 IV Mobile Devices
which means that on each iteration 0 ≤ k<N all work-items first read from A
and then from B.The
, operator for 0 ≤ j<λ
0
is the innermost one, due to
the order in which threads are created by the device.
12
7.5.5 Blocking
As a first step towards better implementations, we will introduce blocking,a
program transformation that will allow us to use vector operations for memory
accesses and arithmetic operations. We will later exploit blocking to improve
cache usage.
Let us assume that matrix order N is divisible by blocking factors ΔI,ΔJ
and ΔK
reg.
. Imagine that
• matrix A consists of
N
ΔI
×
N
ΔK
reg.
submatrices of ΔI ×ΔK
reg.
elements each,
• matrix ...