Jean Zay : logiciels pour l'intelligence artificielle

Description

Les logiciels pour l'intelligence artificielle sont installés dans des environnements virtuels conda.

Ces environnements peuvent être enrichis sur demande auprès de l'assistance IDRIS (assist@idris.fr).

Le support de la version 2.7 de Python ayant pris fin le 01/01/2020, nous n'installons les nouvelles versions des logiciels que pour Python 3 depuis cette date.

Environnements disponibles

Les environnements conda que nous installons sont construits autour de quatre librairies principales :

  • TensorFlow
  • PyTorch
  • Caffe
  • MXNet

Ces environnements sont accessibles via la commande module. Pour afficher la liste des modules IA disponibles :

$ module avail tensorflow pytorch caffe mxnet

Pour activer l'environnement qui vous intéresse, il faut charger le module correspondant. Par exemple, pour activer l'environnement conda contenant la version 2.5.0 de TensorFlow, il faudra charger :

$ module load tensorflow-gpu/py3/2.5.0

Une fois l'environnement activé, vous pouvez lister l'ensemble des paquets Python installés dans cet environnement avec les commandes suivantes :

$ pip list
$ conda list

Versions installées

Pour voir la liste des versions installées sur Jean Zay pour un environnement donné (TensorFlow, PyTorch, Caffe ou MXNet), il faut utiliser la commande module avail. Par exemple pour TensorFlow :

$ module avail tensorflow

Les noms des produits apparaissent sous la forme : <logiciel>-gpu/<version python>/<version produit> à l'exception de MXNet qui a été installé après la fin de vie de Python 2.
Par exemple, la version 2.2.0 de TensorFlow pour Python 3 sera nommée tensorflow-gpu/py3/2.2.0.

Lorsque vous chargez un de ces produits via la commande module, vous chargez également plusieurs dépendances : OpenMPI, CUDA, NCCL, cuDNN,… Les versions de ces dépendances sont indiquées au chargement du produit. Par exemple :

$ module load tensorflow-gpu/py3/2.2.0
Loading tensorflow-gpu/py3/2.2.0
  Loading requirement: cuda/10.1.2 nccl/2.5.6-2-cuda cudnn/7.6.5.32-cuda-10.1 intel-compilers/19.0.4 openmpi/4.0.2-cuda

Vous chargez également la version de Python correspondante (py3 ou py2).

Note : De nouvelles versions peuvent être installées sur demande auprès de l'assistance IDRIS (assist@idris.fr).

Remarques

  • Les commandes module purge, module switch, module unload ne fonctionnent pas avec conda. Pour désactiver un environnement conda et en activer un autre en chargeant un autre module, il faut lancer les commandes suivantes :
    conda deactivate
    module purge
    module load <nouvel_environnement>
  • Pour utiliser les environnements compatibles avec les GPU A100, il faudra charger préalablement le module suivant :
    $ module load arch/a100

    Pour plus d'informations : Modules compatibles avec la partition gpu_p5.

  • Pour utiliser les environnements compatibles avec les GPU H100, il faudra charger préalablement le module suivant :
    $ module load arch/h100

    Pour plus d'informations : Modules compatibles avec la partition gpu_p6.

  • Un environnement conda dédié au domaine de la simulation atomistique est disponible via la commande suivante :
    $ module load atomistic_simulation/py3

    Vous trouverez davantage d'informations sur la page de documentation associée.