Oct 30 – 31, 2023
Zoom
Europe/Istanbul timezone

Organised by TÜBİTAK ULAKBİM and METU.

Date: October 30-31, 2023 

Event Type: Training

Format: 100% online

Topic: Parallel Programming

Overview: In this training, the basic concepts of creating a program with CUDA will be taught. On the first day, at first, we will show how the programs created by OpenMP run on the CPU in parallel. Then, we will show how the programs created by CUDA run on the GPU in parallel. Further, the differences between the execution of the threads on the CPU and the execution of the threads on the GPU will be discussed. Moreover, the hardware and software concepts of the CUDA programming language will be discussed and the necessary commands and functions to create programs will be mentioned. At the end of the day, participants are expected to write the CUDA code of a sample problem so that they can practice. On the second day, we will mention some important issues related to the optimizations of the CUDA code such as Coalesced Access to Global Memory and Warp Divergence. Then, we will mention how the CUDA kernels run on a single GPU or multi-GPU by using CUDA streams. At the end of the day, participants are expected to write the CUDA code of a sample problem so that they can practice.

Agenda: 

Day1: (13.30 - 16.30)

  • Comparison of the CPU architecture and the GPU architecture
  • Differences between the threads of OpenMP and the threads of CUDA
  • Introduction to CUDA Programming
  • An Example Problem: Vector Addition

Day 2: (13.30 - 16.30)

  • Non-Coalesced Access to Global Memory Problem
  • Warp Divergence Problem
  • CUDA Streams and Multi-GPU
  • An Example Problem: Vector Addition with Streams

Language: English

Duration: 3 hours + 3 hours 

Target Audience: Public audience (mainly academia)

Prerequisite(s):  C/C++ knowledge (intermediate level)

Parallel Computing knowledge (basic level)

OpenMP knowledge (basic level)

Linux knowledge (basic level)

Accessing a proper GPU environment in order to solve the example problems

Tools, libraries, frameworks used: C/C++, OpenMP, CUDA

Learning Objectives: After this training, the participants will

  • have knowledge about the fundamentals of CUDA Programming
  • be able to design and develop algorithms on the GPU with CUDA
  • be able to distinguish the differences between OpenMP and CUDA
  • be able to improve the performance of the algorithms run on the GPU
  • be able to distribute the computation to multiple GPUs

About the instructor(s): Dr. Özcan Dülger

Özcan Dülger is a visiting Asst. Prof. Dr. at the Department of Computer Engineering, Middle East Technical University. He received his PhD from the same department. He is also Asst. Prof. Dr. at the Department of Computer Engineering, Artvin Coruh University. He was also a visiting scholar in Center for Automotive Research at the Ohio State University, Columbus, OH, USA. His research areas are Parallel Computing, High-Performance Computing, CUDA Programming, and Target Tracking. He has been working on parallelization of the particle filter-based tracking algorithms on the GPU. https://user.ceng.metu.edu.tr/~odulger/

Contact: ncc@ulakbim.gov.tr

This course is offered free of charge

Following your successful registration, you will receive webinar information approx. 1 day before the event.

Acknowledgments

 

This event was supported by the EuroCC 2 project. This project has received funding from the European High-Performance Computing Joint Undertaking (JU) under grant agreement No 101101903. The JU receives support from the Digital Europe Programme and Germany, Bulgaria, Austria, Croatia, Cyprus, Czech Republic, Denmark, Estonia, Finland, Greece, Hungary, Ireland, Italy, Lithuania, Latvia, Poland, Portugal, Romania, Slovenia, Spain, Sweden, France, Netherlands, Belgium, Luxembourg, Slovakia, Norway, Türkiye, Republic of North Macedonia, Iceland, Montenegro, Serbia.


Follow us on Twitter and LinkedIn. Subscribe to our YouTube Channel

https://twitter.com/EuroCC_Turkey

https://www.linkedin.com/company/eurocc-turkey

https://www.youtube.com/c/EuroCCTurkey

 

 

                             

Starts
Ends
Europe/Istanbul
Zoom
The Zoom link will only be sent to the participants who registered for the event.

The Zoom link will only be sent to the participants who registered for the event.