You are on page 1of 21

Nhn ma trn

Trng Minh Khoa 10520410

Nguyn H Trng Khoa 10520419


Lu Quc Lng 10520380

c im chnh
Nhn dy ma trn
Thut ton x l cc mng
Nhn ma trn li 2-D kiu SIMD
Nhn ma trn trong kin trc siu
khi 3 chiu SIMD
Nhn ma trn trn b a x l UMA
Nhn ma trn trn nhiu my tnh.

Nhn dy ma trn
Global a[0..l-1,0..m-1], b[0..m-1][0..n-1], {Matrices to be multiplied}
c[0..l-1,0..n-1], {Product matrix}
t, {Accumulates dot product}

i, j, k;
Begin
for i:=0 to l-1 do
for j:=0 to n-1 do
t:=0;
for k:=0 to m-1 do
t:=t+a[i][k]*b[k][j];
endfor k;
c[i][j]:=t;
endfor j;
endfor i;

End.

Thut ton x l cc mng


Nhn ma trn li 2-D kiu SIMD
Nhn ma trn trn kin trc siu khi
3 chiu SIMD

Nhn ma trn li 2-D


kiu SIMD

Gentleman (1978) a ra rng nhn ma trn n*n 2-D kiu SIMD


yu cu 0(n) bc nh tuyn
Chng ta s xt thut ton nhn ma trn li 2-D kiu SIMD vi
kt ni wraparound
n gin, ta gi s rng
Kch thc li l n*n
Kch thc mi ma trn (A v B) l n*n
Mi b x l , trong li (v tr ca hng l i, ct l j) cha
, v ,
Trong phn cui ca thut ton, , s cha cc phn t , ca

tch ma trn.

Nhn ma trn li 2-D kiu


SIMD (TT)
Giai on chnh

(a) sp xp
ban u ca
ma trn A v B

(b) chuyn tt c cc phn t


trong hng i ca ma trn A qua
tri i v tr v tt c cc phn t
trong ct j ca ma trn B ln trn
i v tr

Nhn ma trn li 2-D kiu


SIMD (TT)

(b) chuyn tt c cc phn t


trong hng i ca ma trn A
qua tri i v tr v tt c cc
phn t trong ct j ca ma
trn B ln trn i v tr

(c) s phn b ca 2
ma trn A v B sau
khi chuyn

Nhn ma trn li 2-D kiu


SIMD (TT)
Cc bc ca thut ton trong b x l

Nhn ma trn li 2-D kiu


SIMD (TT)

Chuyn 2 ma trn
a[0..n-1,0..n-1] v
b[0..n-1,0..n-1]

Chi tit thut ton


Global n,{ kch thc ca ma trn}
k:
Local a,b,c:
Begin
for k:=1 to n-1 do
forall P(I,j) where 1 i,j
n do
if i k then a:= fromleft(a)
if j k then
b:=fromdown(b);
end forall;
endfor k;

10

Nhn ma trn li 2-D kiu


SIMD (TT)
forall P(i,j) where 0 i,j < n do

c:= a*b;
end forall;

Compute dot
product

for k:=1 to n-1 do

forall P(i,j) where 0 i,j < n do


a:= fromleft(a);
b:=fromdown(b);
c:= c + a*b;
end forall;
endfor k;
End.

11

Thut ton nhn ma trn cho


b a x l

Thit k 5

Kch thc ht cc i

Kch thc ht: s lng cng vic gia cc s tng tc


b x l
Nhng diu cn c xem xt
Song song vng ngoi ca thut ton tun t l s la
chn tt t t dc kch thc ht (0(n3/p)) ln nht.
Gii quyt tranh chp b nh cng nhiu cng tt

12

Thut ton nhn ma trn


cho b a x l UMA
Global n,

{kch thc ma trn}

a[0..n-1,0..n-1], b[0..n-1,0..n-1]; {hai u vo ma trn}

c[0..n-1,0..n-1]; {ma trn tch}


Local i,j,k,t;
Begin
forall Pm where 1 m p do

for i:=m to n step p do


for j:= 1 to n to
t:=0;
for k:=1 to n do t:=t+a[i,k]*b[k,j];
endfor j;
c[i][j]:=t;
endfor i;
end forall;
End.

13

Thut ton nhn ma trn


cho b a x l NUMA

Nhng iu cn c xem xt
C gng gii quyt tranh chp b nh c cng nhiu
cng tt
Tng a ch ca b nh lin quan gim thi gian
truy cp b nh
Thit k 6
Gim thi gian tr ca b nh bng cch tng a ch
Thut ton nhn ma trn khi l mt s la chn hp l
cho trng hp ny

14

Thut ton nhn ma trn


cho nhiu my
Chng ta s hc 2 thut ton
Thut ton inh hng hng - ct
Thut ton nh hng khi

15

Thut ton nh hng


hng - ct

Cc quy trnh c t chc nh mt vng


Bc 1: ban u, mi qu trnh a ra mt dng ca ma
trn A v mt ct ca ma trn B

Bc 2: mi qu trnh p dng nhn vector c 1 phn


t ca ma trn tch C.
Bc 3: sau khi qu trnh s dng ct ca ma trn B, n
ly ct k tip ca B t phn t tip theo trong vng.
Bc 4: nu tt c cc dng ca B c x l th thot.

Nu khng th quay li bc 2.

16

Thut ton nh hng


hng - ct

Thit k 7:

Loi tr s ng cho cc ngun ti

nguyn c chia s bng cch thay i th


t ca d liu truy cp

17

Thut ton nh hng


hng - ct

18

Thut ton nh hng


hng - ct

19

Thut ton nh hng


hng - ct

20

Thut ton nh hng


hng - ct

21

Cm n
thy v cc bn
theo di

You might also like