Free

GPU Computing with Python [CQ - UdeM]

Event Information

Share this event

Date and Time

Location

Location

Université de Montréal

Pavillon Roger-Gaudry, P-312

2900 boul. Edouard-Montpetit

Montréal, QC H3T 1J4

Canada

View Map

Event description

Description

    (La version française suit la version anglaise)


    This workshop will be presented in English by Mr. Nikolai Sergueev, a research computing analyst with Calcul Québec at the Université de Montréal.

    Summary

    This workshop focuses on GPU accelerated computing with Python. Despite being a very popular language, Python not only is considered to be slow for high performance computing but also lacks GPU support. However, the use of Python-based libraries, such as CUDA Python (PyCUDA) and Numba, warrants further consideration on the subject of GPU computing with Python. This gives the user the best of both worlds: rapid development with Python combined with the speed of a compiled language targeting both CPUs and GPUs. In the first part of the workshop we give a very short introduction to CUDA followed by a tutorial on PyCUDA, the library for implementing CUDA's API with Python. The second part of the workshop focuses on Numba, a "just-in-time" compiler for Python that works best on code that uses NumPy arrays and functions along with loops. Upon completion, participants should understand key GPU concepts and be able to write simple GPU programs with Python.

    Lesson plan

    1. Why scripting on GPUs ?
    2. Understanding the architecture of a GPU
    3. What is CUDA ?
    4. Python+CUDA: your first PyCUDA code
    5. GPUArray: a handy PyCUDA library
    6. Numba: just-in-time compiling
    7. Numba: your first code
    8. Numba functions and compilation modes
    9. Numba+CUDA
    10. Hands-on session: learning to program GPU with PyCUDA and Numba

    Prerequisite

    Knowledge of the Python programming language is required but no familiarity with GPU computing is necessary. Attendees should bring their personal laptop computer to participate in the hands-on content.


    How can I contact the organizer if I have any questions?

    You may write to support@calculquebec.ca




    Cet atelier sera donné en anglais par M. Nikolai Sergueev, analyste en calcul scientifique à Calcul Québec à l'Université de Montréal.

    Résumé

    Cet atelier se concentre sur le calcul accéléré par GPU avec Python. Bien qu’il s’agisse d’un langage très populaire, Python n’est pas optimisé pour le calcul haute performance (CHP) et ne contient aucune fonctionnalité permettant de l’utiliser sur les GPU. C’est pourquoi, il est nécessaire d’utiliser des bibliothèques basées sur Python, telles que CUDA Python (PyCUDA) et Numba. En effet, ces outils permettent de combiner la rapidité de développement qu’offre Python et la rapidité d'un langage compilé ciblant à la fois les CPU et les GPU.

    Dans la première partie de l'atelier, nous donnerons une brève introduction à CUDA suivie d'une présentation de PyCUDA, la bibliothèque pour implémenter l'API de CUDA avec Python. La deuxième partie de l'atelier se concentrera sur Numba, un compilateur à la volée.

    À la fin de la formation, les participants et participantes maîtriserons les concepts clés du GPU et seront capables de développer des programmes GPU simples en Python.

    Plan de cours

    1. Pourquoi écrire sur des GPU?
    2. Comprendre l'architecture d'un GPU
    3. Qu'est ce que CUDA?
    4. Python + CUDA: votre premier code PyCUDA
    5. GPUArray: une bibliothèque PyCUDA très pratique
    6. Numba: compilation à la volée
    7. Numba: votre premier code
    8. Fonctions Numba et modes de compilation
    9. Numba + CUDA
    10. Session pratique: apprendre à programmer le GPU avec PyCUDA et Numba

    Prérequis

    Une bonne connaissance du langage de programmation Python est nécessaire, mais aucune connaissance du calcul accéléré par GPU n'est requise. Les participants doivent apporter leur ordinateur portable personnel pour participer à la session pratique.


    Comment puis-je contacter l'organisateur si j'ai des questions?

    Vous pouvez écrire à support@calculquebec.ca

    Share with friends

    Date and Time

    Location

    Université de Montréal

    Pavillon Roger-Gaudry, P-312

    2900 boul. Edouard-Montpetit

    Montréal, QC H3T 1J4

    Canada

    View Map

    Save This Event

    Event Saved