Diferencia entre revisiones de «Lmod»

De NLHPC
Sin resumen de edición
 
(No se muestran 20 ediciones intermedias de 2 usuarios)
Línea 1: Línea 1:
Lmod es un sistema de módulos que permite cargar software para la ejecución en el clúster. La mayoría del software ya se encuentra compilado y optimizado para su ejecución en las diversas arquitecturas disponibles, pero si necesitara software no incluido, por favor, comuníquenoslo mediante un correo a Soporte. A continuación se presenta una guía básica para su uso habitual.
Lmod es un sistema de módulos que permite cargar software para la ejecución en el clúster. La mayoría del software ya se encuentra compilado y optimizado para su ejecución en las diversas arquitecturas disponibles, pero si necesitara software no incluido, por favor, comuníquenoslo mediante un correo a Soporte. A continuación se presenta una guía básica para su uso habitual.


Tenga en cuenta que por defecto se carga el módulo '''intel''', ya que casi todo el software está compilado con dicho compilador. Si no desea usar por defecto dicho compilador, debería ejecutar '''ml purge''' para limpiar el entorno de variables (ver sección Limpiar).
Tenga en cuenta que dependiendo de la partición a utilizar necesitará cargar el ''toolchain'' adecuado para hacer un uso correcto de nuestra arquitectura.


El comando '''module''' y '''ml''' pueden usarse indistintamente. La segunda forma se utiliza para abreviar y es la que se usará en este tutorial.
{| class="wikitable"
|+ Toolchains disponibles por partición
|-
! Partición !! '''main''' !! '''general''' !! '''largemem''' !! '''debug''' !! '''v100''' !! '''mi100''' !! '''mi210'''
|-
| Toolchain sugerido || aocc || intel/2022.00 || intel/2022.00 || aocc || fosscuda/2019b || aocc || aocc
|-
| Otros toolchain || - || intel/2019b || intel/2019b || - || - || - || -
|}
 
Recuerde cargar el toolchain necesario usando los comandos '''module''' o '''ml''' (la segunda forma es utilizada para abreviar y será utilizada en este tutorial), como por ejemplo:
 
ml intel/2022.00
 
o
 
ml aocc
 
Esperamos que esta documentación le sea de utilidad.


== Listar y Buscar ==
== Listar y Buscar ==
El comando ml o ml list lista todos los módulos que estén cargados. El comando ml av o ml avail lista todo el software disponible. La mayoría del software disponible está compilado con el compilador Intel para optimizar su ejecución en nuestra arquitectura computacional.
El comando '''ml''' o '''ml list''' lista todos los módulos que estén cargados.  
 
El comando '''ml av''' o '''ml avail''' lista todo el software disponible. Notarán que el software está agrupado según el toolchain utilizado para su compilación.


<pre>
<pre>
Línea 42: Línea 62:
Para buscar si está disponible un software, use ml spider y un nombre a buscar:
Para buscar si está disponible un software, use ml spider y un nombre a buscar:


<pre>
$ ml spider openfoam
$ ml spider openfoam
---------------------------------------------------------------------------------------------------------------------------------
-----------------------------------------------------------------------------------
   OpenFOAM: OpenFOAM/v1812
   OpenFOAM: OpenFOAM/v1812
---------------------------------------------------------------------------------------------------------------------------------
-----------------------------------------------------------------------------------
 
     Description:
     Description:
       OpenFOAM is a free, open source CFD software package. OpenFOAM has an extensive range of features to solve anything from complex fluid flows involving chemical reactions, turbulence and heat transfer, to solid dynamics and
       OpenFOAM is a free, open source CFD software package. OpenFOAM has an extensive range of features to solve anything from complex fluid flows involving chemical reactions, turbulence and heat transfer, to solid dynamics and
Línea 55: Línea 77:
       icc/2019.2.187-GCC-8.2.0-2.31.1  impi/2019.2.187
       icc/2019.2.187-GCC-8.2.0-2.31.1  impi/2019.2.187
       ifort/2019.2.187-GCC-8.2.0-2.31.1  impi/2019.2.187
       ifort/2019.2.187-GCC-8.2.0-2.31.1  impi/2019.2.187
</pre>


== Mostrar ==
== Mostrar ==
Muestra información específica de una aplicación en particular.
Muestra información específica de una aplicación en particular.
 
<pre>
$ ml spider OpenFOAM/v1812
$ ml spider OpenFOAM/v1812
   
   
  ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
  --------------------------------------------------------------------------------------------------------------------------
   OpenFOAM: OpenFOAM/v1812
   OpenFOAM: OpenFOAM/v1812
  ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
  --------------------------------------------------------------------------------------------------------------------------
 
     Description:
     Description:
       OpenFOAM is a free, open source CFD software package. OpenFOAM has an extensive range of features to solve anything from complex fluid flows involving chemical reactions,
       OpenFOAM is a free, open source CFD software package. OpenFOAM has an extensive range of features to solve anything from complex fluid flows involving chemical reactions,
Línea 72: Línea 96:
       icc/2019.2.187-GCC-8.2.0-2.31.1  impi/2019.2.187
       icc/2019.2.187-GCC-8.2.0-2.31.1  impi/2019.2.187
       ifort/2019.2.187-GCC-8.2.0-2.31.1  impi/2019.2.187
       ifort/2019.2.187-GCC-8.2.0-2.31.1  impi/2019.2.187
</pre>
== Cargar ==
== Cargar ==
Este comando carga el modulo NAMD/2.13-mpi:
Este comando carga el modulo '''NAMD/2.13-mpi''':
 
<pre>
$ ml NAMD/2.13-mpi
$ ml NAMD/2.13-mpi
$ ml
$ ml
Línea 82: Línea 108:
   2) icc/2019.2.187-GCC-8.2.0-2.31.1    5) imkl/2019.2.187  8) zlib/1.2.11    11) NAMD/2.13-mpi
   2) icc/2019.2.187-GCC-8.2.0-2.31.1    5) imkl/2019.2.187  8) zlib/1.2.11    11) NAMD/2.13-mpi
   3) ifort/2019.2.187-GCC-8.2.0-2.31.1  6) intel/2019b      9) Tcl/8.6.9
   3) ifort/2019.2.187-GCC-8.2.0-2.31.1  6) intel/2019b      9) Tcl/8.6.9
</pre>
== Descargar ==
== Descargar ==
Descarga un módulo en particular, pero no sus dependencias.
Descarga un módulo en particular, pero no sus dependencias.
 
<pre>
$ ml
$ ml


Línea 96: Línea 124:


Currently Loaded Modules:
Currently Loaded Modules:
   1) GCCcore/8.2.0                     3) ifort/2019.2.187-GCC-8.2.0-2.31.1   5) imkl/2019.2.187  7) binutils/2.32  9) Tcl/8.6.9
   1) GCCcore/8.2.0                       4) impi/2019.2.187  7) binutils/2.32  10) FFTW/3.3.8
   2) icc/2019.2.187-GCC-8.2.0-2.31.1   4) impi/2019.2.187                    6) intel/2019b      8) zlib/1.2.11    10) FFTW/3.3.8
  2) icc/2019.2.187-GCC-8.2.0-2.31.1     5) imkl/2019.2.187  8) zlib/1.2.11                   
   3) ifort/2019.2.187-GCC-8.2.0-2.31.1   6) intel/2019b      9) Tcl/8.6.
</pre>
 
== Limpiar ==
== Limpiar ==
Eliminar todos los módulos que previamente se tienen cargados.
Eliminar todos los módulos que previamente se tienen cargados.
 
<pre>
$ ml
$ ml


Línea 110: Línea 141:
$ ml
$ ml
No modules loaded
No modules loaded
</pre>
== Ejemplo simple de un script sbatch ==
== Ejemplo simple de un script sbatch ==
Para cargar la versión 3.7 de Python en un script sbatch:
Para cargar la versión 3.7 de Python en un script sbatch:
 
<pre>
#!/bin/bash
#!/bin/bash
#SBATCH -J example
#SBATCH -J example
Línea 121: Línea 154:
#SBATCH --mail-user=user@gmail.com
#SBATCH --mail-user=user@gmail.com
#SBATCH --mail-type=ALL
#SBATCH --mail-type=ALL
 
ml Python/3.7.2
ml intel/2022.00
ml Python/3.12.3


[ETC...]
[ETC...]
</pre>

Revisión actual - 15:40 14 may 2024

Lmod es un sistema de módulos que permite cargar software para la ejecución en el clúster. La mayoría del software ya se encuentra compilado y optimizado para su ejecución en las diversas arquitecturas disponibles, pero si necesitara software no incluido, por favor, comuníquenoslo mediante un correo a Soporte. A continuación se presenta una guía básica para su uso habitual.

Tenga en cuenta que dependiendo de la partición a utilizar necesitará cargar el toolchain adecuado para hacer un uso correcto de nuestra arquitectura.

Toolchains disponibles por partición
Partición main general largemem debug v100 mi100 mi210
Toolchain sugerido aocc intel/2022.00 intel/2022.00 aocc fosscuda/2019b aocc aocc
Otros toolchain - intel/2019b intel/2019b - - - -

Recuerde cargar el toolchain necesario usando los comandos module o ml (la segunda forma es utilizada para abreviar y será utilizada en este tutorial), como por ejemplo:

ml intel/2022.00

o

ml aocc

Esperamos que esta documentación le sea de utilidad.

Listar y Buscar

El comando ml o ml list lista todos los módulos que estén cargados.

El comando ml av o ml avail lista todo el software disponible. Notarán que el software está agrupado según el toolchain utilizado para su compilación.

$ ml av

----------------- /home/lmod/modules/all/MPI/intel/2019.2.187-GCC-8.2.0-2.31.1/impi/2019.2.187 -----------------
   ANTLR/2.7.7-Python-3.7.2                 MPFR/4.0.2                           bzip2/1.0.6
   APR-util/1.6.1                           Mako/1.0.7-Python-2.7.15             cURL/7.64.0
   APR/1.6.5                                Mesa/18.3.4                          cairo/1.16.0
   Autoconf/2.69                     (D)    Meson/0.49.2-Python-3.7.2            expat/2.2.6
   Automake/1.16.1                   (D)    NAMD/2.13-mpi                 (D)    flex/2.6.4                    (D)
   Autotools/20180311                (D)    NAMD/2.13-smp-mpi                    fontconfig/2.13.1
   BAGEL/1.2.2                              NASM/2.14.02                         freeglut/3.0.0
   Bison/3.0.5                              NCL/6.6.2                            freetype/2.9.1
   Bison/3.3                         (D)    NCO/4.7.9                            g2clib/1.6.0
   Boost/1.64.0                             NLopt/2.5.0                          g2lib/1.4.0
   Boost/1.69.0-Python-2.7.15               Ninja/1.9.0                          gc/7.6.8
   Boost/1.69.0                      (D)    ORCA/4.1.1-OpenMPI-3.1.3             gettext/0.19.8.1              (D)
   Bowtie/1.2.2                             OpenFOAM/v1812                       git/2.21.0
   Bowtie2/2.3.4.3                          OpenMPI/3.1.3                        gperf/3.1
   CDO/1.9.6                                OpenMPI/4.0.0                        grib_api/1.28.0
   CESM-deps/2                              OpenMPI/4.0.1                 (D)    help2man/1.47.8               (D)
   CGAL/4.13-Python-2.7.15                  PCRE/8.42                            hopspack/2.0.2
   CGAL/4.13                         (D)    PLUMED/2.5.0                         hwloc/2.0.3                   (D)
   CMake/3.13.4                      (D)    PROJ/5.2.0                           imkl/2019.2.187               (L)
   CP2K/7.0                                 ParaView/5.4.1-mpi                   intltool/0.51.0-Perl-5.28.1
   Doxygen/1.8.15                           Perl/5.28.1                          libGLU/9.0.0
   ELPA/2018.11.001                         Pillow/5.4.1-Python-3.7.2            libQGLViewer/2.7.1
   ESMF/7.1.0r                              PnetCDF/1.9.0                        libconfig/1.7.2
   ESyS-Particle/2.3.5-Python-2.7.15        Pylint/1.9.4-Python-2.7.15           libdap/3.19.1

[ETC...]

Para buscar si está disponible un software, use ml spider y un nombre a buscar:

$ ml spider openfoam
-----------------------------------------------------------------------------------
  OpenFOAM: OpenFOAM/v1812
-----------------------------------------------------------------------------------

    Description:
      OpenFOAM is a free, open source CFD software package. OpenFOAM has an extensive range of features to solve anything from complex fluid flows involving chemical reactions, turbulence and heat transfer, to solid dynamics and
      electromagnetics. 


    You will need to load all module(s) on any one of the lines below before the "OpenFOAM/v1812" module is available to load.

      icc/2019.2.187-GCC-8.2.0-2.31.1  impi/2019.2.187
      ifort/2019.2.187-GCC-8.2.0-2.31.1  impi/2019.2.187

Mostrar

Muestra información específica de una aplicación en particular.

$ ml spider OpenFOAM/v1812
 
 --------------------------------------------------------------------------------------------------------------------------
   OpenFOAM: OpenFOAM/v1812
 --------------------------------------------------------------------------------------------------------------------------

    Description:
      OpenFOAM is a free, open source CFD software package. OpenFOAM has an extensive range of features to solve anything from complex fluid flows involving chemical reactions,
      turbulence and heat transfer, to solid dynamics and electromagnetics. 
 
    You will need to load all module(s) on any one of the lines below before the "OpenFOAM/v1812" module is available to load.

      icc/2019.2.187-GCC-8.2.0-2.31.1  impi/2019.2.187
      ifort/2019.2.187-GCC-8.2.0-2.31.1  impi/2019.2.187

Cargar

Este comando carga el modulo NAMD/2.13-mpi:

$ ml NAMD/2.13-mpi
$ ml
 
Currently Loaded Modules:
  1) GCCcore/8.2.0                       4) impi/2019.2.187   7) binutils/2.32  10) FFTW/3.3.8
  2) icc/2019.2.187-GCC-8.2.0-2.31.1     5) imkl/2019.2.187   8) zlib/1.2.11    11) NAMD/2.13-mpi
  3) ifort/2019.2.187-GCC-8.2.0-2.31.1   6) intel/2019b       9) Tcl/8.6.9

Descargar

Descarga un módulo en particular, pero no sus dependencias.

$ ml

 Currently Loaded Modules:
  1) GCCcore/8.2.0                       4) impi/2019.2.187   7) binutils/2.32  10) FFTW/3.3.8
  2) icc/2019.2.187-GCC-8.2.0-2.31.1     5) imkl/2019.2.187   8) zlib/1.2.11    11) NAMD/2.13-mpi
  3) ifort/2019.2.187-GCC-8.2.0-2.31.1   6) intel/2019b       9) Tcl/8.6.9

$ ml unload NAMD/2.13-mpi
$ ml

Currently Loaded Modules:
  1) GCCcore/8.2.0                        4) impi/2019.2.187   7) binutils/2.32  10) FFTW/3.3.8
  2) icc/2019.2.187-GCC-8.2.0-2.31.1      5) imkl/2019.2.187   8) zlib/1.2.11                     
  3) ifort/2019.2.187-GCC-8.2.0-2.31.1    6) intel/2019b       9) Tcl/8.6.9  

Limpiar

Eliminar todos los módulos que previamente se tienen cargados.

$ ml

Currently Loaded Modules:
  1) GCCcore/8.2.0     3) icc/2019.2.187-GCC-8.2.0-2.31.1     5) impi/2019.2.187   7) intel/2019b
  2) binutils/2.31.1   4) ifort/2019.2.187-GCC-8.2.0-2.31.1   6) imkl/2019.2.187

$ ml purge
$ ml
No modules loaded

Ejemplo simple de un script sbatch

Para cargar la versión 3.7 de Python en un script sbatch:

#!/bin/bash
#SBATCH -J example
#SBATCH -p general
#SBATCH -n 1
#SBATCH -o example_%j.out
#SBATCH -e example_%j.err
#SBATCH --mail-user=user@gmail.com
#SBATCH --mail-type=ALL

ml intel/2022.00
ml Python/3.12.3

[ETC...]