User Tools

Site Tools


tech:slurm

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revisionBoth sides next revision
tech:slurm [2021/03/19 12:14] kohofertech:slurm [2021/03/19 12:28] – [Modules] kohofer
Line 390: Line 390:
 1. First see which python versions are available: 1. First see which python versions are available:
  
-  spack versions python+  root@slurm-ctrl:~# spack versions python
   ==> Safe versions (already checksummed):   ==> Safe versions (already checksummed):
   3.8.2  3.7.7  3.7.4  3.7.1  3.6.7  3.6.4  3.6.1  3.5.2  3.4.10  3.2.6   2.7.17  2.7.14  2.7.11  2.7.8   3.8.2  3.7.7  3.7.4  3.7.1  3.6.7  3.6.4  3.6.1  3.5.2  3.4.10  3.2.6   2.7.17  2.7.14  2.7.11  2.7.8
Line 398: Line 398:
   3.10.0a6  3.8.7rc1  3.7.6rc1   3.6.8rc1   3.5.7rc1   3.4.9     3.4.0     3.1.2rc1   2.7.9rc1  2.6.6     2.4.5   3.10.0a6  3.8.7rc1  3.7.6rc1   3.6.8rc1   3.5.7rc1   3.4.9     3.4.0     3.1.2rc1   2.7.9rc1  2.6.6     2.4.5
   3.10.0a5  3.8.7 ....   3.10.0a5  3.8.7 ....
-  .....+  ..
 +  ...
  
 2. now select the python version you would like to install: 2. now select the python version you would like to install:
  
-  spack install python@3.8.2+  root@slurm-ctrl:~# spack install python@3.8.2 
 +  ==> 23834: Installing libiconv 
 +  ==> Using cached archive: /opt/packages/spack/var/spack/cache/_source-cache/archive/e6/e6a1b1b589654277ee790cce3734f07876ac4ccfaecbee8afa0b649cf529cc04.tar.gz 
 +  ==> Staging archive: /tmp/root/spack-stage/spack-stage-libiconv-1.16-b2wenwxf2widzewcvnhsxtjyisz3bcmc/libiconv-1.16.tar.gz 
 +  ==> Created stage in /tmp/root/spack-stage/spack-stage-libiconv-1.16-b2wenwxf2widzewcvnhsxtjyisz3bcmc 
 +  ==> No patches needed for libiconv 
 +  ==> 23834: libiconv: Building libiconv [AutotoolsPackage] 
 +  ==> 23834: libiconv: Executing phase: 'autoreconf' 
 +  ==> 23834: libiconv: Executing phase: 'configure' 
 +  ==> 23834: libiconv: Executing phase: 'build' 
 +  ==> 23834: libiconv: Executing phase: 'install' 
 +  ==> 23834: libiconv: Successfully installed libiconv 
 +  Fetch: 0.04s.  Build: 24.36s.  Total: 24.40s. 
 +  [+] /opt/packages/spack/opt/spack/linux-ubuntu18.04-skylake_avx512/gcc-9.3.0/libiconv-1.16-b2wenwxf2widzewcvnhsxtjyisz3bcmc 
 +  ==> 23834: Installing libbsd 
 +  ... 
 +  ... 
 +  ... 
 +  ==> 23834: Installing python 
 +  ==> Fetching https://www.python.org/ftp/python/3.8.2/Python-3.8.2.tgz 
 +  ############################################################################################################ 100.0% 
 +  ==> Staging archive: /tmp/root/spack-stage/spack-stage-python-3.8.2-vmyztzplzddt2arrsx7d7koebyuzvk6s/Python-3.8.2.tgz 
 +  ==> Created stage in /tmp/root/spack-stage/spack-stage-python-3.8.2-vmyztzplzddt2arrsx7d7koebyuzvk6s 
 +  ==> Ran patch() for python 
 +  ==> 23834: python: Building python [AutotoolsPackage] 
 +  ==> 23834: python: Executing phase: 'autoreconf' 
 +  ==> 23834: python: Executing phase: 'configure' 
 +  ==> 23834: python: Executing phase: 'build' 
 +  ==> 23834: python: Executing phase: 'install' 
 +  ==> 23834: python: Successfully installed python 
 +  Fetch: 1.81s.  Build: 1m 42.11s.  Total: 1m 43.91s. 
 +  [+] /opt/packages/spack/opt/spack/linux-ubuntu18.04-skylake_avx512/gcc-9.3.0/python-3.8.2-vmyztzplzddt2arrsx7d7koebyuzvk6s 
 + 
 + 
 +This will take some minutes time, depending on the type of version 
  
 3. Now you need to add a modules file 3. Now you need to add a modules file
  
 +  root@slurm-ctrl:~# vi /opt/modules/modulefiles/python-3.8.2
 +
 +<code>
 +#%Module1.0
 +proc ModulesHelp { } {
 +global dotversion
 +  
 +puts stderr "\tPython 3.8.2"
 +}
 +
 +module-whatis "Python 3.8.2"
 +
 +set     main_root       /opt/packages/spack/opt/spack/linux-ubuntu18.04-skylake_avx512/gcc-9.3.0/python-3.8.2-vmyztzplzddt2arrsx7d7koebyuzvk6s
 +set-alias       python3.8       /opt/packages/spack/opt/spack/linux-ubuntu18.04-skylake_avx512/gcc-9.3.0/python-3.8.2-vmyztzplzddt2arrsx7d7koebyuzvk6s/bin/python3.8
 +
 +prepend-path    PATH    $main_root/bin
 +prepend-path    LIBRARY_PATH    $main_root/lib
 +
 +</code>
 +
 +4. New module should now be available:
 +
 +  root@slurm-ctrl:~# module avail
 +  -------------------------------------------- /opt/modules/modulefiles -----------------------------------------
 +  anaconda3  cuda-11.2.1  intel-mpi             module-info  py-mpi4py      python-3.7.7       use.own
 +  bzip       dot          intel-mpi-benchmarks  modules      python-2.7.18  python-3.8.2
 +  cuda-10.2  gcc-6.5.0    miniconda3            null         python-3.5.7   python-3.9.2
 +  cuda-11.0  go-1.15.3    module-git            openmpi      python-3.6.10  singularity-3.6.4
 +
 +5. Load the new module
 +
 +  root@slurm-ctrl:~# module load python-3.8.2
 +
 +6. Verify it works
 +
 +  root@slurm-ctrl:~# python3.8
 +  Python 3.8.2 (default, Mar 19 2021, 11:05:37)
 +  [GCC 9.3.0] on linux
 +  Type "help", "copyright", "credits" or "license" for more information.
 +  >>> exit()
 +
 +7. Unload the new module
  
 +  module unload python-3.8.2
  
  
/data/www/wiki.inf.unibz.it/data/pages/tech/slurm.txt · Last modified: 2022/11/24 16:17 by kohofer