Pour exploiter le miniconda3 version 23.3.1 installé au Centre Blaise Pascal sur les machines du domaine CLoudCBP, il suffit de taper dans un terminal :
module load conda3/23.3.1
Ce miniconda3 comprend notamment les outils classiques de machine learning PyTorch et Tensorflow.
Miniconda est un outil permettant à chaque utilisateur d'installer un environnement Python (et ses dépendances) pour ses propres besoins. C'est devenu nécessaire voire indispensable pour les applications demandant des versions très spécifiques de librairies.
L'installation de son environnement personnel se décompose en 3 phases :
miniconda sur le site de condaLe site de site de conda est assez explicite.
Pour récupérer le dernier installeur Miniconda pour Python 3.9, tapez les commandes suivantes :
cd $HOME wget https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-x86_64.sh -O $HOME/Miniconda.sh
$HOME). En effet, Conda (Miniconda ou Anaconda) installe des centaines de milliers de fichiers. Le $HOME de chaque utilisateur est par défaut limité à 20GB et 500000 inodes. Vous risquez donc de remplir votre espace utilisateur avec une simple installation de Conda
L'installation de compose de 7 étapes :
cp $HOME/.bashrc $HOME/.bashrc.origbash $HOME/Miniconda3.sh<Entrée> à la première invite Python In order to continue the installation process, please review the license agreement. Please, press ENTER to continue >>>
oui à la seconde invite Python Do you accept the license terms? [yes|no] [no] >>>
/scratch/$USER/Miniconda3 à l'invite Python - Press ENTER to confirm the location - Press CTRL-C to abort the installation - Or specify a different location below [/home/<MyLogin>/miniconda3] >>>
projects/projects/users/$USER/Miniconda3/projects/<MonProjet>/Miniconda3yes à l'invite python Do you wish the installer to initialize Miniconda3 by running conda init? [yes|no]
Par défaut, la configuration de votre shell est modifiée : à chaque ouverture de terminal, l'environnement Conda sera chargé, ce qui peut poser des difficultés si vous travaillez avec plusieurs environnements.
Le mieux est d'appliquer les deux commandes suivantes pour retrouver son environnement initial ET extraire de quoi lancer à discrétion l'environnement Conda :
tail -15 $HOME/.bashrc > CondaLatest.rc cp $HOME/.bashrc.orig $HOME/.bashrc
/projects, /scratch ou /local, assurez-vous de créer d'abord le dossier avec mkdir /projects/users/$USER, mkdir /scratch/$USER ou mkdir /local/$USER
De manière à lancer l'environnement Conda, il suffit de lancer la commande : source $HOME/CondaLatest.rc.
Dans un terminal :
jmylq@threadripper:~$ echo $PATH /usr/local/bin:/usr/bin:/bin:/usr/local/games:/usr/games jmylq@threadripper:~$ source $HOME/CondaLatest.rc (base) jmylq@threadripper:~$ echo $PATH /scratch/jmylq/miniconda3/bin:/scratch/jmylq/miniconda3/condabin:/usr/local/bin:/usr/bin:/bin:/usr/local/games:/usr/games (base) jmylq@threadripper:~$ echo $LD_LIBRARY_PATH
Nous voyons que le $PATH a été amendé des chemins vers
/scratch/jmylq/miniconda3/bin/scratch/jmylq/miniconda3/condabin
Une fois l'environnement chargé avec source $HOME/CondaLatest.rc, il suffit de taper conda install <Logiciel> pour que Conda recherche les dépendances, les installe puis installe le logiciel spécifié.
Par exemple, pour l'installation de machine learning pytorch : conda install pytorch
Voici les logs complets d'une installation classique :
[/home/jmylq/miniconda3] >>> /scratch/$USER/miniconda3
PREFIX=/scratch/jmylq/miniconda3
Unpacking payload ...
Collecting package metadata (current_repodata.json): done
Solving environment: done
## Package Plan ##
environment location: /scratch/jmylq/miniconda3
added / updated specs:
- _libgcc_mutex==0.1=main
- brotlipy==0.7.0=py39h27cfd23_1003
- ca-certificates==2020.12.8=h06a4308_0
- certifi==2020.12.5=py39h06a4308_0
- cffi==1.14.4=py39h261ae71_0
- chardet==3.0.4=py39h06a4308_1003
- conda-package-handling==1.7.2=py39h27cfd23_1
- conda==4.9.2=py39h06a4308_0
- cryptography==3.3.1=py39h3c74f83_0
- idna==2.10=py_0
- ld_impl_linux-64==2.33.1=h53a641e_7
- libedit==3.1.20191231=h14c3975_1
- libffi==3.3=he6710b0_2
- libgcc-ng==9.1.0=hdf63c60_0
- libstdcxx-ng==9.1.0=hdf63c60_0
- ncurses==6.2=he6710b0_1
- openssl==1.1.1i=h27cfd23_0
- pip==20.3.1=py39h06a4308_0
- pycosat==0.6.3=py39h27cfd23_0
- pycparser==2.20=py_2
- pyopenssl==20.0.0=pyhd3eb1b0_1
- pysocks==1.7.1=py39h06a4308_0
- python==3.9.1=hdb3f193_2
- readline==8.0=h7b6447c_0
- requests==2.25.0=pyhd3eb1b0_0
- ruamel_yaml==0.15.80=py39h27cfd23_0
- setuptools==51.0.0=py39h06a4308_2
- six==1.15.0=py39h06a4308_0
- sqlite==3.33.0=h62c20be_0
- tk==8.6.10=hbc83047_0
- tqdm==4.54.1=pyhd3eb1b0_0
- tzdata==2020d=h14c3975_0
- urllib3==1.25.11=py_0
- wheel==0.36.1=pyhd3eb1b0_0
- xz==5.2.5=h7b6447c_0
- yaml==0.2.5=h7b6447c_0
- zlib==1.2.11=h7b6447c_3
The following NEW packages will be INSTALLED:
_libgcc_mutex pkgs/main/linux-64::_libgcc_mutex-0.1-main
brotlipy pkgs/main/linux-64::brotlipy-0.7.0-py39h27cfd23_1003
ca-certificates pkgs/main/linux-64::ca-certificates-2020.12.8-h06a4308_0
certifi pkgs/main/linux-64::certifi-2020.12.5-py39h06a4308_0
cffi pkgs/main/linux-64::cffi-1.14.4-py39h261ae71_0
chardet pkgs/main/linux-64::chardet-3.0.4-py39h06a4308_1003
conda pkgs/main/linux-64::conda-4.9.2-py39h06a4308_0
conda-package-han~ pkgs/main/linux-64::conda-package-handling-1.7.2-py39h27cfd23_1
cryptography pkgs/main/linux-64::cryptography-3.3.1-py39h3c74f83_0
idna pkgs/main/noarch::idna-2.10-py_0
ld_impl_linux-64 pkgs/main/linux-64::ld_impl_linux-64-2.33.1-h53a641e_7
libedit pkgs/main/linux-64::libedit-3.1.20191231-h14c3975_1
libffi pkgs/main/linux-64::libffi-3.3-he6710b0_2
libgcc-ng pkgs/main/linux-64::libgcc-ng-9.1.0-hdf63c60_0
libstdcxx-ng pkgs/main/linux-64::libstdcxx-ng-9.1.0-hdf63c60_0
ncurses pkgs/main/linux-64::ncurses-6.2-he6710b0_1
openssl pkgs/main/linux-64::openssl-1.1.1i-h27cfd23_0
pip pkgs/main/linux-64::pip-20.3.1-py39h06a4308_0
pycosat pkgs/main/linux-64::pycosat-0.6.3-py39h27cfd23_0
pycparser pkgs/main/noarch::pycparser-2.20-py_2
pyopenssl pkgs/main/noarch::pyopenssl-20.0.0-pyhd3eb1b0_1
pysocks pkgs/main/linux-64::pysocks-1.7.1-py39h06a4308_0
python pkgs/main/linux-64::python-3.9.1-hdb3f193_2
readline pkgs/main/linux-64::readline-8.0-h7b6447c_0
requests pkgs/main/noarch::requests-2.25.0-pyhd3eb1b0_0
ruamel_yaml pkgs/main/linux-64::ruamel_yaml-0.15.80-py39h27cfd23_0
setuptools pkgs/main/linux-64::setuptools-51.0.0-py39h06a4308_2
six pkgs/main/linux-64::six-1.15.0-py39h06a4308_0
sqlite pkgs/main/linux-64::sqlite-3.33.0-h62c20be_0
tk pkgs/main/linux-64::tk-8.6.10-hbc83047_0
tqdm pkgs/main/noarch::tqdm-4.54.1-pyhd3eb1b0_0
tzdata pkgs/main/noarch::tzdata-2020d-h14c3975_0
urllib3 pkgs/main/noarch::urllib3-1.25.11-py_0
wheel pkgs/main/noarch::wheel-0.36.1-pyhd3eb1b0_0
xz pkgs/main/linux-64::xz-5.2.5-h7b6447c_0
yaml pkgs/main/linux-64::yaml-0.2.5-h7b6447c_0
zlib pkgs/main/linux-64::zlib-1.2.11-h7b6447c_3
Preparing transaction: done
Executing transaction: done
installation finished.
Do you wish the installer to initialize Miniconda3
by running conda init? [yes|no]
[no] >>> yes
no change /scratch/jmylq/miniconda3/condabin/conda
no change /scratch/jmylq/miniconda3/bin/conda
no change /scratch/jmylq/miniconda3/bin/conda-env
no change /scratch/jmylq/miniconda3/bin/activate
no change /scratch/jmylq/miniconda3/bin/deactivate
no change /scratch/jmylq/miniconda3/etc/profile.d/conda.sh
no change /scratch/jmylq/miniconda3/etc/fish/conf.d/conda.fish
no change /scratch/jmylq/miniconda3/shell/condabin/Conda.psm1
no change /scratch/jmylq/miniconda3/shell/condabin/conda-hook.ps1
no change /scratch/jmylq/miniconda3/lib/python3.9/site-packages/xontrib/conda.xsh
no change /scratch/jmylq/miniconda3/etc/profile.d/conda.csh
modified /home/jmylq/.bashrc
==> For changes to take effect, close and re-open your current shell. <==
If you'd prefer that conda's base environment not be activated on startup,
set the auto_activate_base parameter to false:
conda config --set auto_activate_base false
Thank you for installing Miniconda3!