22.08.2013 Views

vector - Department of Computer Science

vector - Department of Computer Science

vector - Department of Computer Science

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

Vector Execution Time<br />

Time = f(<strong>vector</strong> length, data dependencies, struct. hazards)<br />

• Initiation rate: rate that FU consumes <strong>vector</strong> elements<br />

(= number <strong>of</strong> lanes; usually 1 or 2 on Cray T-90)<br />

• Convoy: set <strong>of</strong> <strong>vector</strong> instructions that can begin<br />

execution on same clock (if no structural or data hazards)<br />

• Chime: approximate time for a <strong>vector</strong> operation<br />

• m convoys take m chimes; if each <strong>vector</strong> length is n, then<br />

they take approx. m x n clock cycles if no chaining<br />

(ignores overhead; good approximization for long <strong>vector</strong>s)<br />

and as little as m + n - 1 cycles, if fully chained.<br />

1: LV V1,Rx ;load <strong>vector</strong> X<br />

2: MULV V2,F0,V1 ;<strong>vector</strong>-scalar mult.<br />

LV V3,Ry ;load <strong>vector</strong> Y<br />

3: ADDV V4,V2,V3 ;add<br />

4: SV Ry,V4 ;store the result<br />

4 convoys, 1 lane, VL=64<br />

=> 4 x 64 = 256 clocks<br />

(or 4 clocks per result)<br />

3/22-24/11 CSE502-S11, Lec 14+15-Vector 10

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!