Seminar Nhan Ma Tran

You might also like

Download as pptx, pdf, or txt
Download as pptx, pdf, or txt
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