Using GPU with Jupyter/nbgrader server

Using GPU with Jupyter/nbgrader server#

by Marc BUFFAT, dpt Mécanique, Université Claude Bernard Lyon 1

_images/GPU_IA.jpg

Ce livre interactif jupyter-book [JupyterBook, 2024] contient la documentation pour utiliser des serveurs de cours Jupyter/nbrager [Jupyter, 2024] [Nbgrader, 2024] mis en place à l’université Lyon 1 [Include, 2024] [Buffat, 2022]. Ces serveurs de cours HPC sont utilisés pour la formation dans des domaines nécéssitant des ressources de calcul de type GPU, par exemple en machine learning computationnelle.

Contrairement aux solutions classiques, dans lesquelles les étudiants utilisent leurs propres ressources de calcul (PC personnel, salle de TP informatique, ..), la solution proposée permet aux étudiants un accès 24h/24h et 7j/7j à des ressources performantes HPC avec un simple navigateur Web. Elle permet aussi un partage simple de documents et informations avec les enseignants dans le cadre d’un système de gestion de cours sous Jupyter/nbgrader avec des bibliothèques et des outils optimisées pour le calcul avec GPU en IA et ML. L’utilisation se fait soit à travers des notebooks IPython pour des calculs interactifs simples, soit en lançant des programmes (écrit en Python, Julia, C++) en tache de fond (système de batch) pour des calculs plus longs.

Warning

Dans ce type d’environnement, les ressources de calcul HPC sur les serveurs de cours Jupyter/nbgrader sont partagées entre tous les utilisateurs. Il faut absolument en tenir compte lorsque que l’on exécute un calcul d’IA computationnelle.

Ce livre utilise le langage Python pour de la programmation scientifique et du machine learning. On pourra consulter [Buffat, 2023] pour une introduction à la programmation scientifique avec Python et [Buffat, 2024] pour un exemple de cours “introduction au machine learning en Mécanique” mis en place sur cet environnement.

Table des matières#

Annexe

Documentation#

[1]

Marc Buffat. Inpros: introduction à la programmation scientifique. 2018. URL: https://perso.univ-lyon1.fr/marc.buffat/2022/BOOK_INPROS/index.html.

[2]

Marc Buffat. Système de gestion de cours avec jupyter/nbgrader. 2022. URL: https://perso.univ-lyon1.fr/marc.buffat/2022/BOOK_VALIDATION/index.html.

[3]

Marc Buffat. Programmation scientifique avec python. 2023. URL: https://perso.univ-lyon1.fr/marc.buffat/COURS/BOOK_PYTHON_SCIENTIFIQUE_HTML/intro.html.

[4]

Marc Buffat. Artificial intelligence in mechanical engineering. 2024. URL: https://perso.univ-lyon1.fr/marc.buffat/COURS/BOOK_INTROIA_HTML/intro.html.

[5]

Marc Buffat. Using gpu on jupyter/nbgrader server. 2025. URL: https://perso.univ-lyon1.fr/marc.buffat/COURS/BOOK_GPUJUPYTER_HTML/intro.html.

[6]

Include. Plateforme jupyter/nbgrader lyon 1. 2024. URL: https://jupyter.univ-lyon1.fr.

[7]

Jupyter. Documention jupyterhub. 2024. URL: https://jupyterhub.readthedocs.io/en/stable/.

[8]

JupyterBook. Documention jupyter book. 2024. URL: https://jupyterbook.org/en/stable/.

[9]

Jean Michel Maurice. Introduction au système unix/linux. 2000. URL: https://perso.univ-lyon1.fr/marc.buffat/COURS/LINUX_HTML/unixhtml/cours01.htm.

[10]

Nbgrader. Documention jupyter/nbgrader. 2024. URL: https://nbgrader.readthedocs.io/en/stable/.

[11]

PyTorch. Documention pytorch. 2024. URL: https://pytorch.org/docs/stable/index.html.

[12]

Tensorflow. Documention tensorflow. 2024. URL: https://www.tensorflow.org/tensorboard?hl=fr.

(C) Marc BUFFAT