20131107

10
Thur., Nov 7, 2013 Pin Yi Tsai WEEKLY REPORT

Transcript of 20131107

Page 1: 20131107

Thur., Nov 7, 2013

Pin Yi Tsai

WEEKLY REPORT

Page 2: 20131107

OUTLINE

• Current Work• New Method

• Compute Integral Image – computeByRow unknown problem

• How to Debug? Nsight

Page 3: 20131107

NEW METHOD

• Previous Version:

• One line per thread

• Take too much time on accessing inconsistent memory

• New one:

• One pixel per thread

• Using shared memory to store the middle value

Page 4: 20131107

NEW METHOD (CONT.)

• Shared memory: store the values of the previous line

• computing by Row for img[*][y] and img[*][y+1]

• Time t: calculate img[*][y] + shared memory[*]

• Then store the result back to shared memory[*]

• Time t+1: calculate img[*][y+1] + shared memory[*]

Page 5: 20131107

COMPUTE INTEGRAL IMAGE – COMPUTE_BY_ROW

• Original Input

Page 6: 20131107

COMPUTE INTEGRAL IMAGE (CONT.)

• Correct Output – Compute By Row

Page 7: 20131107

COMPUTE INTEGRAL IMAGE (CONT.)

• With problems

Page 8: 20131107

HOW TO DEBUG ?

• Nsight ─ an IDE for developers building CUDA application ─ able to Profile and observe the value of each thread

• In process:

• Compile with custom makefile

Page 9: 20131107

HOW TO DEBUG ? (CONT.)

Page 10: 20131107

The End