Accueil Direction du Numérique Site de L'Université

Accueil > Site Public > Calcul

Utilisation de la file GPU / Installation des packages PYTHON

Publié le 10 juin 2024

Export en PDF :

1/ Connexion avec le logiciel client léger NX NoMachine :

https://ccub.u-bourgogne.fr/dnum-ccub/spip.php?article961#outil_sommaire_1

2/ Le gestionnaire de batch SGE :

https://ccub.u-bourgogne.fr/dnum-ccub/spip.php?article959#outil_sommaire_10
https://ccub.u-bourgogne.fr/dnum-ccub/spip.php?article379

3/ Les machines GPU :

Des machines dotées de GPU NVIDIA V100 et A100 sont à votre disposition via la file ’gpu’.
Ces machines sont particulièrement efficaces pour l’apprentissage machine (machine learning) et le l’apprentissage profond (deep learning). D’autres logiciels peuvent également tirer parti de la puissance de calcul des GPU sous condition que ceux-ci aient été optimisés pour cette architecture.

Ci-dessous quelques informations techniques complémentaires sur les caractéristiques de la file "gpu" :

  • accès batch (qsub) et interactif (qlogin)
  • durée maximale d’un job : 48h
  • environnements parallèles partagés (-pe smp)
  • limité à 2 GPU par utilisateur
  • 2 GPU Nvidia V100 ou A100 par machine
  • IDE spyder, notebook, anaconda-navigator, etc

Pour soumettre un job batch :

qsub -q gpu my_gpu.job

Script my_gpu.job :
***************************************
# !/bin/ksh

# La file d’attente
#$ -q gpu

# L’environnement parallele SMP pour 2 GPU (ajouter un $ après le #) pour la prise en compte
# -pe smp 2

# L’adresse electronique de contact (facultatif)
# -M toto@u-bourgogne.fr

# Le nom du fichier de sortie (facultatif)
#$ -o /work/group/login/test_gpu.out

# Le nom du job (facultatif)
# -N TEST_GPU

# Chargement de l’environement Pytorch
module load pytorch/2.2.2/gpu

# Dans le cas ou des packages sont installés localement
export PYTHONUSERBASE=/work/group/login/mypythonproject

# Le lancement du calcul
python monscript.py
***************************************

Pour utiliser en interactif une GPU de la file GPU :

qlogin -q gpu

Pour utiliser en interactif la GPU d’une machine spécifique de la file GPU :

qlogin -q gpu@webernXX

Pour utiliser en interactif deux GPU de la file GPU :

qlogin -q gpu -pe smp2

4/ Gestion des environnements logiciels en ligne de commande avec les modules :

https://ccub.u-bourgogne.fr/dnum-ccub/spip.php?article961#outil_sommaire_1

Par exemple, pour charger un environnement Python 3.X avec un framework Pytorch pour GPU :

module load pytorch/2.2.2/gpu

Pour l’aide à propos d’un module :

module help pytorch/2.2.2/gpu

5/ Les packages python :

En ce qui concerne l’installation des packages qui sont nécessaires à un projet python, le mieux est de les installer vous même dans un répertoire personnel.
Par défaut, ils sont installés dans le sous répertoire .local de votre répertoire de connexion.

Il est préférable de "cloisonner" vos installations locales de packages par projet pour éviter des collisions et problèmes de dépendances.

Par exemple, pour préciser à python de travailler avec vos packages dans le répertoire "mypythonproject", il faut :

+ créer le répertoire
mkdir $HOME/mypythonproject

+ positionner la variable d’environnement PYTHONUSERBASE :
export PYTHONUSERBASE=$HOME/mypythonprojerct

******************************************************************************************************

Ce qui donne dans l’ordre :

a/ Connexion au centre de calcul avec NX NoMAchine

b/ Connexion en mode interactif sur une machine GPU :

qlogin -q gpu

c/ Chargement de l’environnement PYTHON/PYTORCH voulu
module load pytorch/2.0.0/gpu

d/ Si besoin d’installer un package :
+ Positionner la variable d’environnement PYTHONUSERBASE :
export PYTHONUSERBASE=$HOME/mypythonproject

+ Naviguer sur le site web qui fournit le dépot des package python : https://pypi.org/
et rechercher le packages désiré

+ S’il existe vous pouvez l’installer en mode utilisateur
python -m pip install —user $NOM_DU_PACKAGE

L’utilisation ci-dessus de la commade pip n’est pas exhaustive.
N’hésitez pas à en consulter sa documentation.

6/ CUDA
Le kit de développement CUDA est également disponible via les modules

# Lister les modules CUDA
module av cuda

# Chargement d’un module CUDA
module load cuda/12.1

7/ Divers
Pour l’éxecution d’un code avec Tensorflow, il peut être nécessaire de positionner cette variable d’environnement :

module load tensorflow/2.11.0/gpu
export XLA_FLAGS="—xla_gpu_cuda_data_dir=/soft/c7/python/3.10/anaconda/2023.03/pkgs_ext/tensorflow/2.11.0/lib"

A propos de XLA :
https://www.tensorflow.org/xla?hl=fr


Date de création: septembre 1994
Contact : ccub@u-bourgogne.fr
Ce site requiert l'activation de Javascript sur votre navigateur pour fonctionner dans son intégralité.