Lecture 5: HW1 Discussion, Intro to GPUs
G63.2011.002/G22.2945.001 · October 5, 2010
Discuss HW1 Intro to GPU Computing
Lecture 5: HW1 Discussion, Intro to GPUs G63.2011.002/G22.2945.001 - - PowerPoint PPT Presentation
Lecture 5: HW1 Discussion, Intro to GPUs G63.2011.002/G22.2945.001 October 5, 2010 Discuss HW1 Intro to GPU Computing Outline Discuss HW1 Intro to GPU Computing Discuss HW1 Intro to GPU Computing Outline Discuss HW1 Intro to GPU
Discuss HW1 Intro to GPU Computing
Discuss HW1 Intro to GPU Computing
Discuss HW1 Intro to GPU Computing
Discuss HW1 Intro to GPU Computing
Discuss HW1 Intro to GPU Computing
Discuss HW1 Intro to GPU Computing
Discuss HW1 Intro to GPU Computing
Discuss HW1 Intro to GPU Computing
Discuss HW1 Intro to GPU Computing
Discuss HW1 Intro to GPU Computing
Discuss HW1 Intro to GPU Computing
Discuss HW1 Intro to GPU Computing
Discuss HW1 Intro to GPU Computing
Discuss HW1 Intro to GPU Computing
Discuss HW1 Intro to GPU Computing
Discuss HW1 Intro to GPU Computing
Discuss HW1 Intro to GPU Computing
Discuss HW1 Intro to GPU Computing
Discuss HW1 Intro to GPU Computing
Discuss HW1 Intro to GPU Computing
Discuss HW1 Intro to GPU Computing
Discuss HW1 Intro to GPU Computing
Discuss HW1 Intro to GPU Computing
Discuss HW1 Intro to GPU Computing
FLOPS L1D PEND MISS 8 2.6e−04 18 0.7037 movsd 0x50(%rax),%xmm7 187 0.0062 8 0.3127 movsd 0x58(%rax),%xmm5 7 2.3e−04 24 0.9382 movsd 0x60(%rax),%xmm3 470 0.0155 18 0.7037 movsd 0x68(%rax),%xmm4 49 0.0016 9 0.3518 movsd 0x70(%rax),%xmm2 2873 0.0950 7 0.2737 movsd 0x78(%rax),%xmm1 434 0.0144 8 0.3127 xchg %ax,%ax 184312 6.0959 26 1.0164 movsd (%rdx),%xmm0 2022 0.0669 14 0.5473 inc %esi 19 6.3e−04 3 0.1173 mulsd (%rcx),%xmm0 5294 0.1751 189 7.3886 addsd 0x30(%rsp),%xmm0 31888 1.0547 68 2.6583 movsd %xmm0,(%rax) 66032 2.1839 37 1.4464 movsd %xmm0,0x30(%rsp) 114001 3.7704 43 1.6810 movsd (%rcx),%xmm0 1131 0.0374 3 0.1173 mulsd 0x8(%rdx),%xmm0 11913 0.3940 2 0.0782 addsd %xmm0,%xmm14 94565 3.1276 20 0.7819 movsd %xmm14,0x8(%rax) 108501 3.5885 25 0.9773 movsd (%rcx),%xmm0 4 1.3e−04 1 0.0391 mulsd 0x10(%rdx),%xmm0 76622 2.5342 81 3.1665 addsd %xmm0,%xmm15 82075 2.7145 42 1.6419 movsd %xmm15,0x10(%rax) 119036 3.9370 36 1.4073 movsd (%rcx),%xmm0 5 1.7e−04 mulsd 0x18(%rdx),%xmm0 2700 0.0893 addsd %xmm0,%xmm12 14861 0.4915 11 0.4300 movsd %xmm12,0x18(%rax) Discuss HW1 Intro to GPU Computing
Discuss HW1 Intro to GPU Computing
Discuss HW1 Intro to GPU Computing
Discuss HW1 Intro to GPU Computing
Discuss HW1 Intro to GPU Computing
Discuss HW1 Intro to GPU Computing
Discuss HW1 Intro to GPU Computing
Discuss HW1 Intro to GPU Computing
Discuss HW1 Intro to GPU Computing
Discuss HW1 Intro to GPU Computing
Discuss HW1 Intro to GPU Computing
Discuss HW1 Intro to GPU Computing
Discuss HW1 Intro to GPU Computing
Discuss HW1 Intro to GPU Computing
(Execute)
(A big one)
Discuss HW1 Intro to GPU Computing
(Execute)
Discuss HW1 Intro to GPU Computing
(Execute)
(Execute)
Discuss HW1 Intro to GPU Computing
ALU (Execute) Fetch/ Decode Execution Context ALU (Execute) Fetch/ Decode Execution Context ALU (Execute) Fetch/ Decode Execution Context ALU (Execute) Fetch/ Decode Execution Context
Discuss HW1 Intro to GPU Computing
ALU ALU ALU ALU ALU ALU ALU ALU ALU ALU ALU ALU ALU ALU ALU ALU
Discuss HW1 Intro to GPU Computing
ALU ALU ALU ALU ALU ALU ALU ALU ALU ALU ALU ALU ALU ALU ALU ALU
Discuss HW1 Intro to GPU Computing
Discuss HW1 Intro to GPU Computing
Discuss HW1 Intro to GPU Computing
ALU 1 ALU 2 ALU 3 ALU 4 ALU 5 ALU 6 ALU 7 ALU 8
Discuss HW1 Intro to GPU Computing
ALU 1 ALU 2 ALU 3 ALU 4 ALU 5 ALU 6 ALU 7 ALU 8
Discuss HW1 Intro to GPU Computing
Discuss HW1 Intro to GPU Computing
Discuss HW1 Intro to GPU Computing
Discuss HW1 Intro to GPU Computing
ALU 1 ALU 2 . . . ALU 8 . . . Time (clocks) 2 ... 1 ... 8
if (x > 0) { } else { } <unconditional shader code> <resume unconditional shader code> y = pow(x, exp); y *= Ks; refl = y + Ka; x = 0; refl = Ka;
Discuss HW1 Intro to GPU Computing
ALU 1 ALU 2 . . . ALU 8 . . . Time (clocks) 2 ... 1 ... 8
if (x > 0) { } else { } <unconditional shader code> <resume unconditional shader code> y = pow(x, exp); y *= Ks; refl = y + Ka; x = 0; refl = Ka;
Discuss HW1 Intro to GPU Computing
ALU 1 ALU 2 . . . ALU 8 . . . Time (clocks) 2 ... 1 ... 8
if (x > 0) { } else { } <unconditional shader code> <resume unconditional shader code> y = pow(x, exp); y *= Ks; refl = y + Ka; x = 0; refl = Ka;
Discuss HW1 Intro to GPU Computing
ALU 1 ALU 2 . . . ALU 8 . . . Time (clocks) 2 ... 1 ... 8
if (x > 0) { } else { } <unconditional shader code> <resume unconditional shader code> y = pow(x, exp); y *= Ks; refl = y + Ka; x = 0; refl = Ka;
Discuss HW1 Intro to GPU Computing
Discuss HW1 Intro to GPU Computing
Discuss HW1 Intro to GPU Computing
Discuss HW1 Intro to GPU Computing
Discuss HW1 Intro to GPU Computing
Time (clocks) Frag 1 … 8 Fetch/ Decode Ctx Ctx Ctx Ctx Ctx Ctx Ctx Ctx Shared Ctx Data
ALU ALU ALU ALU ALU ALU ALU ALU 33
Discuss HW1 Intro to GPU Computing
Time (clocks) Fetch/ Decode
ALU ALU ALU ALU ALU ALU ALU ALU
Frag 1 … 8 Frag 9… 16 Frag 17 … 24 Frag 25 … 32
34
Discuss HW1 Intro to GPU Computing
Time (clocks) Stall
Frag 1 … 8 Frag 9… 16 Frag 17 … 24 Frag 25 … 32
35
Discuss HW1 Intro to GPU Computing
Time (clocks) Stall
Frag 1 … 8 Frag 9… 16 Frag 17 … 24 Frag 25 … 32
36
Discuss HW1 Intro to GPU Computing
Time (clocks)
Stall Stall Stall Stall
Frag 1 … 8 Frag 9… 16 Frag 17 … 24 Frag 25 … 32
37
Discuss HW1 Intro to GPU Computing
Time (clocks) Stall
Frag 1 … 8 Frag 9… 16 Frag 17 … 24 Frag 25 … 32
Stall
Stall
Stall
38
Discuss HW1 Intro to GPU Computing
Discuss HW1 Intro to GPU Computing
Discuss HW1 Intro to GPU Computing
ALU ALU ALU ALU ALU ALU ALU ALU
DP ALU
Discuss HW1 Intro to GPU Computing
Discuss HW1 Intro to GPU Computing
Discuss HW1 Intro to GPU Computing
Discuss HW1 Intro to GPU Computing
Discuss HW1 Intro to GPU Computing