Objectives
-
Organized by:
-
Barcelona Supercomputing Center (BSC)
-
University of Illinois at Urbana-Champaign (University of Illinois)
-
Universitat Politecnica de Catalunya (UPC)
-
HiPEAC Network of Excellence (HiPEAC)
-
PUMPS is part of this year PRACE Advanced Training Centre program
-
-
The following is a list of some of the topics that will be covered during the course:
-
CUDA Algorithmic Optimization Strategies
-
Dealing with Sparse and Dynamic data
-
Efficiency in Large Data Traversal
-
Reducing Output Interference
-
Controlling Load Imbalance and Divergence
-
Acceleration of Collective Operations
-
Dynamic Parallelism and HyperQ
-
Debugging and Profiling CUDA Code
-
Multi-GPU Execution
-
Architecture Trends and Implications
-
Introduction to OmpSs and to the Paraver analysis tool
-
OmpSs: Leveraging GPU/CUDA Programming
-
Hands-on Labs: CUDA Optimizations on Scientific Codes; OmpSs Programming and Tuning
-
-
-
Distinguished Lecturers: Wen-mei Hwu (University of Illinois at Urbana-Champaign) and David Kirk (NVIDIA Corporation )
-
Invited Lecturer: Juan Gómez-Luna (Universidad de Córdoba)
-
BSC / UPC Lecturers: Xavier Martorell and Xavier Teruel
-
Teaching Assistants: Abdul Dakkak, Carl Pearson, Simon Garcia de Gonzalo, Marc Jorda, Pau Farre, Javier Bueno, Aimar Rodriguez
-
-
Prerequisites for the course are:
-
Basic CUDA knowledge is required to attend the course. Applicants that cannot certify their experience in CUDA programming will be asked to take a short on-line course covering the necessary introductory topics
-
C, C++, Java, or equivalent programming knowledge. Skills in parallel programming will be helpful
-
Preliminary Overview
-
By the end of the summer school, participants will:
-
Be able to design algorithms that are suitable for accelerators.
-
Understand the most important architectural performance considerations for developing parallel applications.
-
Be exposed to computational thinking skills for accelerating applications in science and engineering.
-
Engage computing accelerators on science and engineering breakthroughs.
-
-
Programming Languages: CUDA, MPI, OmpSs, OpenCL
-
Hands-on Labs: Afternoon labs with teaching assistants for each audience/level.
-
Participants are expected to bring their own laptops to access the servers with GPU accelerators.
-
The afternoon lab sessions will provide hands-on experience with various languages and tools covered in the lectures and will comprise a brief introduction to the programming assignments, followed by independent work periods. Teaching assistants will be available in person and on the web to help with assignments.
-
Requirements
Basic knowledge of C/C++ programming
Attendees will need to bring their own laptops with a SSH client
Materials
INTELLECTUAL PROPERTY RIGHTS NOTICE:
• The User may only download, make and retain a copy of the materials for his/her use for non‐commercial and research purposes.
• The User may not commercially use the material, unless has been granted prior written consent by the Licensor to
do so; and cannot remove, obscure or modify copyright notices, text acknowledging or other means of identification or disclaimers as they appear.
• For further details, please contact BSC‐CNS patc [at] bsc [dot] es