Environnement de travail (RLD/AMAL)

Vous trouverez ci-dessous les instructions pour pouvoir travailler pendant le TPs et pour les projets des modules AMAL et RLD. En cas de problème, contactez-nous sur mattermost (sur le canal RLD ou AMAL).

Machines de la PPTI

Trois salles de la ppti sont équipées de bons GPUs (RTX 2080) : la 502, la 509 et la 407. Pour se connecter, en ssh en passant par la passerelle ssh.ufr-info-p6.jussieu.fr,  puis ppti-14-502-XX (XX=01 à 16) ou ppti-14-407-XX. Ces machines sont arrêtées le soir et redémarrées le matin; en cours de semestre, elles seront utilisables toute la journée, mais rebootées une fois par jour vers 8h. Au niveau espace disque, en plus du /tmp, vous avez également un répertoire /temporary qui est semi-permanent (il n’est pas nettoyé à chaque reboot) de plus de 300Go, dans lequel vous pouvez travailler quand vous avez besoin de place. N’oubliez pas de recopier les résultats expérimentaux toutefois !

Sur les machines de la PPTI, il suffit d’exécuter la commande suivante pour configurer votre environnement de travail :

source /users/nfs/Enseignants/piwowarski/venv/deepdac/bin/activate

Se connecter à distance sur les machines de la PPTI

Pour pouvoir vous connecter à distance aux machines de la PPTI, il faut utiliser ssh. Afin de vous permettre de vous connecter facilement, il faut ajouter dans le fichier de configuration $HOME/.ssh/config les lignes suivantes :

Host ppti 
   User votre_login 
   Hostname ssh.ufr-info-p6.jussieu.fr 

Host ppti-* User votre_login
   User votre_login  
    ProxyJump ppti

Pour lancer un jupyter lab, faire ssh -L8888:localhost:8888 -L 6006:localhost:6006 ppti-14-502-XX et lancer jupyter lab sur la machine à distance. En local, vous utilisez l’adresse habituelle de jupyter, http://localhost:8888, et de tensorboard, http://localhost:6006.

Pour plus de facilité, utilisez une clef SSH en exécutant sur votre machine

ssh-keygen -t ed25519

Dans le répertoire .ssh, vous trouverez un fichier id_ed25519.pub dont le contenu devra être mis dans le $HOME/.ssh/authorized_hosts d’une machine de la ppti.

Machines personnelles

Il est possible d’utiliser votre machine personnelle. Pour windows, nous vous conseillons fortement d’installer Ubuntu WSL qui est une version légère de linux qui est bien intégrée avec Windows (sinon, débrouillez-vous avec conda). Sous OS X, il faut avoir une version de python 3 récente (>= 3.8). Vous pouvez utiliser homebrew pour l’installer.

Quelque soit la plateforme, nous vous conseillons également d’installer visual studio code (VSCode) – ceci vous permettra (entres autres) de travailler facilement à distance sur les machines de la PPTI.

Finalement, n’oubliez pas de mettre à jour votre environnement AVANT le TP (surtout pour le premier jour où il y a beaucoup de choses à télécharger).

Création de l’environnement Python

Assurez-vous d’avoir installé les paquets suivants (sous mac, utilisez homebrew):

# Linux et Ubuntu WSL
sudo apt install python3-venv python3-pip 
sudo apt install ffmpeg

# Pour OS X
brew install ffmpeg # seulement pour RLD

Commencez par créer un environnement spécifique pour AMAL et/ou RLD avec (vous pouvez remplacer $HOME par un autre chemin si vous le souhaitez) :

# Si vous utilisez python standard (linux / ubuntu WSL / mac)
python3 -m venv $HOME/deepdac

# Si vous utilisez Conda
conda create -n deepdac python=3.9
conda install pip

Activation et installation

Pour utiliser l’environnement de travail, utilisez la commande suivante :

# (1) installation du module "master-dac"

# Si vous utilisez python standard (linux / ubuntu WSL / mac)
source $HOME/deepdac
pip install master_dac

# Avec conda
conda activate deepdac
pip install master_dac

# (2) Ajout des cours suivis

master-dac courses add amal  # pour AMAL 
master-dac courses add rld   # pour RLD

Avant chaque TP (et de préférence chez vous afin de que tout le monde ne télécharge au même moment…), afin de vous assurer que votre environnement est à jour, exécutez :

source $HOME/deepdac # ou conda activate deepdac

# Vérifie la liste des paquets
master-dac update

# Pour AMAL (téléchargement des jeux de données)
master-dac download-datasets

Une fois cela fait, vous pourrez accéder à votre environnement de travail en tapant pour tout nouveau terminal ouvert (avant toute commande) :

source $HOME/deepdac # ou conda activate deepdac

FAQ

CUDA 11

Si vous avez cuda 11 installé (à vérifier avec nvcc --version), et que votre version de pytorch n’est pas compatible, i.e. torch.cuda.is_available() renvoie false, il faut modifier le fichier $HOME/.local/pip.conf de la façon suivante (il faudra aussi exécuter pip install -U torch après):

[global]
extra-index-url = https://download.pytorch.org/whl/cu113

Problème de proxy (PPTI)

Ajoutez à votre $HOME/.profile les lignes suivantes (il faut relancer la session terminal après, ou bien également exécuter ces lignes dans le terminal) :

export http_proxy='http://proxy.ufr-info-p6.jussieu.fr:3128'
export https_proxy='http://proxy.ufr-info-p6.jussieu.fr:3128'