Différences
Ci-dessous, les différences entre deux révisions de la page.
| Les deux révisions précédentes Révision précédente Prochaine révision | Révision précédente | ||
| recherche:cluster:softwares [19/06/2020 15:12] – description anaconda aurelien.villani | recherche:cluster:softwares [05/04/2023 16:42] (Version actuelle) – julien.favre | ||
|---|---|---|---|
| Ligne 1: | Ligne 1: | ||
| - | ====== Liste des logiciels disponibles ====== | + | ====== Liste des logiciels disponibles |
| - | * dispo en faisant | + | |
| - | * Certaines personnes ont besoin de versions spécifiques de codes. Elles doivent être faites dans le home. Un exemple est donné ci dessous. Si un code peut être utile à tous les utilisateurs, | + | |
| + | * Certaines personnes ont besoin de versions spécifiques de codes. Elles doivent être faites dans le home, afin de ne pas polluer l' | ||
| Ligne 8: | Ligne 9: | ||
| La distribution Python du cluster est [[https:// | La distribution Python du cluster est [[https:// | ||
| - | La doc se trouve [[https:// | + | La doc se trouve [[https:// |
| Les avantages par rapport à une distribution système de base: | Les avantages par rapport à une distribution système de base: | ||
| Ligne 15: | Ligne 16: | ||
| * on peut personnaliser l' | * on peut personnaliser l' | ||
| - | Par défaut, deux modules sont dispos: anaconda/python2 et anaconda/ | + | Un module va etre dispobile disponible: |
| - | Dans les deux cas, il suffit d' | + | `anaconda2022/python` |
| + | qui remplacera | ||
| + | Au chargement, le module indique qu'il faudra ajouter une fonction dans votre shellrc. | ||
| + | Pour bash, dans `~/.bashrc` : | ||
| + | |||
| + | < | ||
| + | XXX | ||
| + | </ | ||
| + | |||
| + | Pour zsh, dans `~/ | ||
| + | < | ||
| + | XXX | ||
| + | </ | ||
| + | |||
| + | Ensuite, vous pouvez afficher les environnement disponibles avec `conda env list`, et activer celui qui vous intéresse avec `conda activate celui_que_je_veux` | ||
| + | |||
| + | ==== Env perso ==== | ||
| Il se peut que vous ayez besoin d'une version spécifique, | Il se peut que vous ayez besoin d'une version spécifique, | ||
| - | Pour un python spécifique, | + | Vous pouvez installer un // |
| < | < | ||
| - | module load anaconda/python2 | + | module load anaconda/python |
| - | conda create --name monpythonamoi python=2.4 | + | conda create --name monpythonamoi python=3.6 numpy tensorflow ETC |
| </ | </ | ||
| - | Vous aurez alors une installation minimale **sans les modules python du système**. | + | Pour activer cet environnement: |
| < | < | ||
| Ligne 45: | Ligne 62: | ||
| </ | </ | ||
| + | ===== Jupyter lab ===== | ||
| + | Référent: `[[aurelien.villani@emse.fr]]` | ||
| + | :new: | ||
| + | |||
| + | On peut avoir un [[https:// | ||
| + | |||
| + | **Avant toute chose !** Python est séquentiel, | ||
| + | |||
| + | < | ||
| + | module load tools/ | ||
| + | cluster-create-slurm-script-01.sh -jupyter-lab | ||
| + | </ | ||
| + | Çà utilise le module anaconda/ | ||
| + | |||
| + | Note: si vous avez un alias pour le cluster dans ~/ | ||
| + | |||
| + | Faites vos résas comme d' | ||
| + | Procédez ensuite comme suit (en anglais parce voilà, comme dans le job): | ||
| + | |||
| + | |||
| + | You now have to connect to your notebook. Open slurm-XXX.out | ||
| + | |||
| + | - Open a terminal from your desktop (NOT centaure) and create a tunnel to the compute where you notebook has been assigned, with the command below. It will have the correct values in the slurm-XXX.out. If you want the tunnel to stay in the background, remove use 'ssh -f ...' | ||
| + | ssh -L \${port}: | ||
| + | - Now look for the connection link to paste in your browser in the bottom of the file. It looks like %%`http:// | ||
| + | - Happy notebook use ! | ||
| + | - **VERY IMPORTANT**: | ||
| + | |||
| + | |||
| + | __Notes: | ||
| + | * Attention à la durée de réservation, | ||
| + | * Si vous voulez lancer avec un autre module python, modifiez le fichier job. Après `module load anaconda/ | ||
| + | * **Non recommandé, | ||
| + | * 'srun -p intensive.q --time=00: | ||
| + | * ça vous mets sur, par exemple, compute-0-5 | ||
| + | * 'mkdir / | ||
| + | * `module load anaconda/ | ||
| + | * trouvez un port libre: `comm -23 <(seq 7777 8888 | sort) <(ss -Htan | awk ' | ||
| + | * `jupyter-lab --no-browser --port=8146` | ||
| + | * faites le tunnel `ssh -L 8146: | ||
| + | * connectez vous depuis votre navigateur %%`http:// | ||
| + | * `File-> | ||
| + | * rapatriez vos données du scratch avec un scp | ||
| + | |||
| + | |||
| + | ====== MTEX ====== | ||
| + | |||
| + | ==== Utiliser MTEX sur le cluster ==== | ||
| + | Référent: `[[julien.favre@emse.fr]]` | ||
| + | |||
| + | Mtex est un package utilisable avec Matlab pour traiter les cartes EBSD. La documentation est disponible sur : https:// | ||
| + | |||
| + | Le traitement pouvant être lourd, cela devient intéressant d' | ||
| + | |||
| + | Plusieurs étapes pour l' | ||
| + | |||
| + | 1) Télécharger et décompresser Mtex | ||
| + | Télecharger avec la commande (pensez à télécharger la dernière version bien sur, le lien peut changer): | ||
| + | < | ||
| + | wget https:// | ||
| + | </ | ||
| + | Puis décompresser l' | ||
| + | < | ||
| + | unzip mtex-5.9.0.zip | ||
| + | </ | ||
| + | Ces deux commandes vont créer un dossier mtex-5.9.0 sur votre home (bien sur le nom des dossiers et des archives va varier avec la version que vous aurez téléchargé). | ||
| + | |||
| + | 2) Dans votre dossier home, vous allez devoir installer et compiler en local une librairie. Suivez le guide... | ||
| + | Importer le module GCC9 avec la commande module load gcc/9.3.0 | ||
| + | Importer matlab aussi, sinon ça va planter: module load matlab/ | ||
| + | |||
| + | Télécharger la librairie NFFT avec (pensez à télécharger la dernière version bien sur, le lien peut changer): | ||
| + | < | ||
| + | wget https:// | ||
| + | </ | ||
| + | Puis décompresser l' | ||
| + | < | ||
| + | tar -xf nfft-3.5.3.tar.gz | ||
| + | </ | ||
| + | On navigue dans le dossier décompressé: | ||
| + | < | ||
| + | cd nfft-3.5.3/ | ||
| + | </ | ||
| + | Puis exécuter les commandes suivantes pour faire la compilation. Faites attention au chemin d' | ||
| + | < | ||
| + | ./ | ||
| + | ./configure --with-matlab=/ | ||
| + | make | ||
| + | </ | ||
| + | |||
| + | Normalement la compilation doit se dérouler sans problème. Sinon, c'est dommage pour vous. | ||
| + | |||
| + | Maintenant copiez certains fichiers obtenus de la compilation vers le répertoire de mtex que vous avez décompressé: | ||
| + | < | ||
| + | cp ~/ | ||
| + | cp ~/ | ||
| + | cp ~/ | ||
| + | </ | ||
| + | |||
| + | 3) Installation à proprement dit de Mtex. | ||
| + | Naviguez dans le répertoire d' | ||
| + | Vérifiez bien que vous avez importé GCC9 et Matlab avec " | ||
| + | Lancer la commande " | ||
| + | Normalement Mtex va s' | ||
| + | |||
| + | 4) Vous pensez avoir fini... ben non... En fait quand on lance Matlab, Mtex ne se lance pas spontanément. Donc pour lancer un job avec Mtex il faut quelques astuces. | ||
| + | Déja, commencez par générer un fichier job pour votre calcul avec : | ||
| + | < | ||
| + | module load tools/ | ||
| + | cluster-create-slurm-script-01.sh -matlab | ||
| + | </ | ||
| + | Pensez bien à modifier la version importée de matlab en mettant la commande module load matlab/ | ||
| + | Pour lancer un job matlab il faut bien utiliser la commande " | ||
| + | |||
| + | Une fois que vous avez fait ça, dans votre script il faut d' | ||
| + | < | ||
| + | cd ~/ | ||
| + | startup_mtex | ||
| + | cd ~/mtex | ||
| + | monscriptmtexici | ||
| + | </ | ||
| + | avec " | ||
| + | |||
| + | Pour résumer, quand vous lancez un traitement depuis un dossier de travail, mettez le fichier job dedans, celui-ci va lancer run_mtex.m, qui démarre Mtex et lance votre script. A priori ça devrait marcher. Sinon, n' | ||