PATC: Introduction to CUDA Programming

Date: 30/Mar/2020 Time: 09:00 - 02/Apr/2020 Time: 18:00

Place:

The course will take place in the UPC Campus Nord premises. Vertex Building, Room VS208

Target group: The target audiences of the course are students who want to develop exciting applications for these processors, as well as those who want to develop programming tools and future implementations for these processors.

Primary tabs

DAY 1

Session 1 / 9:00am – 1:00 pm (3:30 h lectures)
L1 9:00-10:45 The GPU hardware: Many-core Nvidia developments
10:45-11:15 Coffee break
L2 11:15-13:00 CUDA Programming: Threads, blocks, kernels, grids
13:00-14:00 Lunch break

Session 2 / 2:00pm – 6:00 pm (3:30 h lectures)
L3 14:00-15:45 CUDA Tools: Compiling, debugging, profiling, occupancy calculator
15:45-16:15 Coffee break
L4 16:15-18:00 CUDA Examples(1): VectorAdd, Stencil, ReverseArray

DAY 2

Session 3 / 9:00am – 1:00 pm (3:30 h lectures)
L5 9:00-10:45 CUDA Examples (2): Matrices Multiply. Assorted optimizations
10:45-11:15 Coffee break
L6 11:15-13:00 CUDA Examples (3): Dynamic parallelism, Hyper-Q, unified memory
13:00-14:00 Lunch break

Session 4 / 2:00pm – 6:00 pm (3:30 h practical)
H1 14:00-15:45 Hands-on Lab 1
15:45-16:15 Coffee break
H2 16:15-18:00 Hands-on Lab 2

DAY 3

Session 5 / 9:00am – 1:00 pm (3:30 h lectures)
L7 9:00-10:45 Inside Pascal: Multiprocessors, stacked memory, NV-link
10:45-11:15 Coffee break
L8 11:15-13:00 OpenACC and other approaches to GPU computing
13:00-14:00 Lunch break

Session 6 / 2:00pm – 6:00 pm (3:30 h practical)
H3 14:00-15:45 Hands-on Lab 3
15:45-16:15 Coffee break
H4 16:15-18:00 Hands-on Lab 4

DAY 4

Session 7 / 9:00am – 1:00 pm (3:30 h practical)
H5 9:00-10:45 Hands-on Lab 5
10:45-11:15 Coffee break
H6 11:15-13:00 Hands-on Lab 6
13:00-14:00 Lunch break

Session 8 / 2:00pm – 6:00 pm (3:30 h practical)
H7 14:00-15:45 Hands-on Lab 7
15:45-16:15 Coffee break
H8 16:15-18:00 Free Hands-on Lab

End of Course