PATC Course: Introduction to CUDA Programming
This course is delivered by the CUDA Center of Excellence (CCOE) awarded by NVIDIA to the Barcelona Supercomputing Center (BSC) in association with Universitat Politecnica de Catalunya (UPC).
The aim of this course is to provide students with knowledge and hands-on experience in developing applications software for processors with massively parallel computing resources. In general, we refer to a processor as massively parallel if it has the ability to complete more than 64 arithmetic operations per clock cycle. Many commercial offerings from NVIDIA, AMD, and Intel already offer such levels of concurrency. Effectively programming these processors will require in-depth knowledge about parallel programming principles, as well as the parallelism models, communication models, and resource limitations of these processors. 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.
The students who finish this course will learn how to program massively parallel processors and achieve high performance, functionality, maintainability, and scalability across future generations.
The students who finish this course will acquire technical knowledge required to achieve the above goals by learning principles and patterns of parallel algorithms, processor architecture features and constraints, and programming API, tools and techniques.
Day 1 – 2nd June, 2014
09:00h The GPU hardware: Many-core Nvidia developments
11:15h CUDA Programming: Threads, blocks, kernels, grids
14:00h CUDA Tools: Compiling, debugging, profiling, occupancy calculator
16:15h CUDA Examples: VectorAdd, ReverseArray, Matrix Multiply
Day 2 – 3th June, 2014
09:00h Inside Kepler
11:15h Optimizing GPU codes on Kepler using CUDA 5.0
14:00h Lab: Getting Started Guide (PATC)
14:30h Lab: Vector Addition
16:15h Lab: Simple Matrix-Matrix Multiplication
Day 3 – 4th June, 2014
09:00h Future Nvidia designs: Maxwell, Pascal, Stacked DRAM
11:15h Programming with CUDA 6.0 and unified memory
14:00h Lab: Tiled 7-point 3D Stencil
16:15h Lab: Tiled Matrix-Matrix Multiplication
Day 4 – 5th June, 2014
09:00h Atomics and Histograming14:30h Lab: Vector Addition
14:00h Lab: Histogramming
16:15h Lab: Vector Reduction
Day 5 – 6th June, 2014
09:00h Prefix Scan
11:15h CUDA Streams
14:00h Lab: Prefix scan
Level: BEGINNERS: for trainees from different background or very little knowledge (All courses are designed for specialists with at least finished 1st cycle degree)
The course will take place in Barcelona Supercomputing Centre, within the UPC Campus Nord premises,
Room VS219, Vertex Building (green on the map)
S indicates that the room is 2 floors below the entrance level.
From the Airport
Barcelona airport is at 12 Km from the city. More information about Barcelona’s airport: www.aena.es. You can arrive with different transport methods from the airport to BSC:
In T1, you will find a taxi stand in the arrivals zone (P0) and in the Barcelona-Madrid air corridor; in T2, opposite terminals T2A, T2B and T2C. If they are available, they will show a green light with the text LIBRE or LLIURE (it means “available”). You can check fees at www.taxibarcelona.cat.
If you rent a car from the airport (T1), please leave “El Prat del Llobregat” and take C-32B. Continue along this route and head towards Ronda de Dalt / Lleida / Girona. Close to Barcelona, take route C-32 passing close to Cornellà del Llobregat and L’Hospitalet. Take B-20 and take Exit 10 called “Carretera d'Esplugues”. Take the street called “carrer del Gran Capità” and turn left towards Jordi Girona street.
There is a Renfe suburban train. The airport station is situated opposite of terminal T2, and is connected to this terminal via an airbridge. There is also a Bus transit service between the Rail station and T1. From the airport to Barcelona Sants there is approximately 20 minutes journey. From this station, take the L3 (green line) in direction to “Zona Universitaria” and get off on the “Palau Reial” stop. You will have a 5-minutes walking distance to arrive to BSC. (www.renfe.es)
By Bus (Aerobus)
Airport stops: Bus stops at Terminal T1 and T2 (A, B, C)
Downtown stops: This line ends at Plaça Catalunya (city center). Once there, you may take L3 of the underground to "Palau Reial" or "Zona Universitaria" stations.
From the City Centre
Campus Nord of Universitat Politècnica de Catalunya is located at the North-West corner of the city, at the end of the Green Line (L3) of the underground. In order to reach the Campus by public transport, it is advisable to use the underground. There are two stations near to the Campus, “Zona Universitària” and “Palau Reial”, both on L3.
There is no registration fee. The attendees would need to cover the expenses for travel, accommodation and meals. Click to go to suggested accommodation
Basic knowledge of C/C++ programming
Attendees will need to bring their own laptops with a SSH client.
Please follow the link for map of some local hotels.
The PATC@BSc training events are funded by BSC and PRACE 3IP project.
If you want to learn more about PRACE Project, visit the website.