Free

Introduction to CUDA [McGill]

Event Information

Share this event

Date and Time

Location

Location

Rutherford Physics Building, McGill University

3600 Rue University

Bell Room (Room 103)

Montréal, QC H3A 2T8

Canada

View Map

Event description

Description

CUDA, which stands for Compute Unified Device Architecture, is the main programming language used to harness the power of GPU (Graphic Processing Units) in high performance computing. It is supported on every NVidia GPU accelerators. In this tutorial, you will learn how to use CUDA with the programming language C, to write simple algorithms on GPUs.

Prerequisites: some knowledge of the C programming language, the Bash command line and job submission on a compute cluster. If needed, participants are invited to check our Introduction to Linux and Introduction to Advanced Research Computing (ARC) workshops.

Registration

  • Academic participant : FREE
  • Non-academic participant : $350 (by check only) - Please write to formation@calculquebec.ca to complete your registration.

Course plan

  • Architecture of a GPU
  • Workflow of a CUDA program
  • Identify whether an algorithm is a good candidate for "easy" performance gains on a GPU
  • Finding information on the web and within the NVidia CUDA SDK
  • Writing and compiling a minimal CUDA code and compiling CUDA examples
  • Managing GPU memory and understanding the various types of GPU memory
  • Using threads and blocks to write parallel algorithms
  • Checking errors
  • Overview of what’s outside CUDA (OpenACC, Libraries, OpenCL, Applications)
  • Some advanced topics about CUDA

Instructor

Pier-Luc St-Onge, an Advanced Research Computing (ARC) analyst working at Calcul Québec

Language

English

Contact

For any question, please write to formation@calculquebec.ca.




Résumé

CUDA (Compute Unified Device Architecture) est le principal langage de programmation utilisé pour exploiter la puissance de calcul des accélérateurs graphiques (GPU, Graphic Processing Units) dans le domaine du calcul de haute performance. Ce langage est supporté par tous les accélérateurs graphiques NVidia. Dans ce cours, vous apprendrez comment utiliser CUDA avec le langage de programmation C pour écrire des algorithmes simple sur des GPUs.

Prérequis : des connaissances de base du langage C, de la ligne de commande Bash et de la soumission de tâches sur les grappes de calcul. En cas de besoin, nous invitons les participants à regarder nos ateliers Introduction à Linux et Introduction au calcul informatique de pointe (CIP, "Advanced Research Computing" ou ARC en anglais).

Inscription

  • Participant académique : gratuit
  • Participant non-académique : 350$ (par chèque). Veuillez nous écrire afin de compléter votre inscription : formation@calculquebec.ca

Plan de cours

  • Architecture d’un GPU
  • Flot d’exécution d’un programme CUDA
  • Déterminer si un algorithme est un bon candidat pour un gain de performance "facile" sur un GPU
  • Trouver de l’information sur le web et à l’intérieur du kit de développement de CUDA
  • Écrire et compiler un code minimal et les exemples CUDA
  • Gérer la mémoire du GPU et comprendre les types de mémoire disponibles
  • Utiliser des fils (thread) et blocs pour écrire des algorithmes parallèles
  • Vérifier les erreurs
  • Survol d’autres façons d’utiliser un GPU (OpenACC, Bibliothèques, OpenCL, applications)
  • Quelques sujets avancés concernant CUDA

Formateur

Pier-Luc, un analyste en calcul informatique de pointe de Calcul Québec.

Langue du cours

Anglais

Contact

Pour toutes questions, écrivez-nous à formation@calculquebec.ca.

Share with friends

Date and Time

Location

Rutherford Physics Building, McGill University

3600 Rue University

Bell Room (Room 103)

Montréal, QC H3A 2T8

Canada

View Map

Save This Event

Event Saved