NSM Online Course

CUDA Programming

May 2 -- June 17, 2022

NSM Nodal Centre for Training in HPC and AI is organizing an online course on CUDA Programming. The course is taught via live online lectures, and doubt sessions. The topics are listed below.


Registrations are now closed.


The event is scheduled online. E-meeting details will be mailed to the registered participants one week before the course begins. Each talk is for 1.5 hour duration including Q&A.


  • Introduction to GPU
  • CUDA Hello World
  • Computation
  • Memory
  • Synchronization
  • Topics
Who may attend this course?

  • if you have interest in learning to program GPUs
  • students from science and engineering
  • company personnel interested in programming GPUs
  • scientists and domain experts

    Who should NOT attend this course?

  • if you never heard of a graphics processing unit
  • if you do not know programming

  • Schedule

    Each talk is of 90 minutes duration.
    1May 217:00Introduction to GPU
    2May 417:00Hello World in CUDA
    3May 617:00CUDA program flow and cudamemcopies
    4May 917:00Thread organization and Thread block
    5May 1117:00GPU computation Hierarchy and Matrix Squaring
    6May 1317:00Thread Divergence
    7May 1617:00Types of memories, latency, and locality
    8May 1817:00Memory coalescing and AoS vs. SoA
    9May 2017:00Shared Memory
    10May 2317:00Bank Conflicts
    11May 2517:00Compute Capabilities
    12May 2717:00Data Race and Synchronization
    13May 3017:00Mutual Exclusion
    14June 117:00Atomics
    15June 317:00Barriers
    16June 617:00Reductions and Prefix sum
    17June 817:00Functions
    18June 1017:00Support
    19June 1317:00CUDA Topics
    20June 1517:00Multi-dimensional arrays in C/CUDA
    21June 1717:00Exam (online, one hour, MCQ)


    A course completion e-certificate will be issued to all the registered participants who attend at least 15 of the classes live and write the exam. The exam score will not be considered for certification.


    Jash Khatri
    MS Scholar, CSE, IIT Madras
    Researcher on Graph Algorithms on GPUs
    (to be) Software Engineer at Microsoft