Diferencia entre las páginas «Https://wiki.nlhpc.cl/Hardware Disponible» y «Lmod»

De NLHPC
(Diferencia entre las páginas)
Sin resumen de edición
 
 
Línea 1: Línea 1:
El NLHPC cuenta actualmente con los siguientes recursos computacionales, distribuidos en varias particiones [https://wiki.nlhpc.cl/SISTEMA_GESTOR_DE_RECURSOS SLURM]:
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).


El comando '''module''' y '''ml''' pueden usarse indistintamente. La segunda forma se utiliza para abreviar y es la que se usará en este tutorial.


<table border="0" style="background:#ffffff" align="top" class="sortable wikitable">
== Listar y Buscar ==
<caption align="center" style="background:DarkSlateBlue; color:white"><big><b>Partición general</b></big>
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.
</caption>
<tr>
<th width="60 px" style="background:Lavender; color:Black">Nodo
</th>
<th width="80 px" style="background:Lavender; color:Black">Modelo
</th>
<th width="80 px" style="background:Lavender; color:Black">Cantidad
</th>
<th width="100 px" style="background:Lavender; color:Black">Procesador
</th>
<th width="120 px" style="background:Lavender; color:Black">RAM
</th>
<th width="140 px" style="background:Lavender; color:Black">Infiniband
</th></tr>
<tr>
<td>sn[001-048]</td>
<td>Dell PowerEdge C6420</td>
<td>48</td>
<td>2 x Intel Xeon Gold 6152 CPU @ 2.10GHz, 22 cores C./U.</td>
<td>187 GB</td>
<td>Infiniband FDR
</td></tr>
</table>


<pre>
$ 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...]
</pre>


<table border="0" style="background:#ffffff" align="top" class="sortable wikitable">
Para buscar si está disponible un software, use ml spider y un nombre a buscar:
<caption align="center" style="background:DarkSlateBlue; color:white"><big><b>Partición largemem</b></big>
</caption>
<tr>
<th width="60 px" style="background:Lavender; color:Black">Nodo
</th>
<th width="80 px" style="background:Lavender; color:Black">Modelo
</th>
<th width="80 px" style="background:Lavender; color:Black">Cantidad
</th>
<th width="100 px" style="background:Lavender; color:Black">Procesador
</th>
<th width="120 px" style="background:Lavender; color:Black">RAM
</th>
<th width="140 px" style="background:Lavender; color:Black">Infiniband
</th></tr>
<tr>
<td>fn[001-009]</td>
<td>Dell PowerEdge R640</td>
<td>9</td>
<td>2 x Intel Xeon Gold 6152 CPU @ 2.10GHz, 22 cores C./U.</td>
<td>765 GB</td>
<td>Infiniband FDR
</td></tr>
</table>
<p><br>
</p>


<pre>
$ ml spider openfoam
-----------------------------------------------------------------------------------
  OpenFOAM: OpenFOAM/v1812
-----------------------------------------------------------------------------------


<table border="0" style="background:#ffffff" align="top" class="sortable wikitable">
    Description:
<caption align="center" style="background:DarkSlateBlue; color:white"><big><b>Partición gpus</b></big>
      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
</caption>
      electromagnetics.
<tbody><tr>
 
<th width="60 px" style="background:Lavender; color:Black">Nodo
 
</th>
    You will need to load all module(s) on any one of the lines below before the "OpenFOAM/v1812" module is available to load.
<th width="80 px" style="background:Lavender; color:Black">Modelo
 
</th>
      icc/2019.2.187-GCC-8.2.0-2.31.1  impi/2019.2.187
<th width="80 px" style="background:Lavender; color:Black">Cantidad
      ifort/2019.2.187-GCC-8.2.0-2.31.1  impi/2019.2.187
</th>
</pre>
<th width="100 px" style="background:Lavender; color:Black">Procesador
 
</th>
== Mostrar ==
<th width="160 px" style="background:Lavender; color:Black">GPU
Muestra información específica de una aplicación en particular.
</th>
<pre>
<th width="120 px" style="background:Lavender; color:Black">RAM
$ ml spider OpenFOAM/v1812
</th>
<th width="140 px" style="background:Lavender; color:Black">Infiniband
---------------------------------------------------------------------------------------------------------------------------------
</th></tr>
  OpenFOAM: OpenFOAM/v1812
<tr>
---------------------------------------------------------------------------------------------------------------------------------
<td>gn[001-002]</td>
    Description:
<td>Dell PowerEdge R740</td>
      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,
<td>2</td>
      turbulence and heat transfer, to solid dynamics and electromagnetics.
<td>2 x Intel Xeon Gold 6152 CPU @ 2.10GHz, 22 cores C./U.</td>
<td>2x NVIDIA Tesla V100 C/U.</td>
    You will need to load all module(s) on any one of the lines below before the "OpenFOAM/v1812" module is available to load.
<td>187 GB</td>
 
<td>Infiniband FDR
      icc/2019.2.187-GCC-8.2.0-2.31.1  impi/2019.2.187
</td></tr>
      ifort/2019.2.187-GCC-8.2.0-2.31.1  impi/2019.2.187
</tbody></table>
</pre>
<p><br>
 
</p>
== Cargar ==
<table border="0" style="background:#ffffff" align="top" class="sortable wikitable">
Este comando carga el modulo NAMD/2.13-mpi:
<caption align="center" style="background:DarkSlateBlue; color:white"><big><b>Partición slims</b></big>
 
</caption>
$ ml NAMD/2.13-mpi
<tbody><tr>
$ ml
<th width="60 px" style="background:Lavender; color:Black">Nodo
</th>
Currently Loaded Modules:
<th width="80 px" style="background:Lavender; color:Black">Modelo
  1) GCCcore/8.2.0                      4) impi/2019.2.187  7) binutils/2.32  10) FFTW/3.3.8
</th>
  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
<th width="80 px" style="background:Lavender; color:Black">Cantidad
  3) ifort/2019.2.187-GCC-8.2.0-2.31.1  6) intel/2019b      9) Tcl/8.6.9
</th>
== Descargar ==
<th width="100 px" style="background:Lavender; color:Black">Procesador
Descarga un módulo en particular, pero no sus dependencias.
</th>
 
<th width="120 px" style="background:Lavender; color:Black">RAM
$ ml
</th>
 
<th width="140 px" style="background:Lavender; color:Black">Infiniband
Currently Loaded Modules:
</th></tr>
  1) GCCcore/8.2.0                      4) impi/2019.2.187  7) binutils/2.32  10) FFTW/3.3.8
<tr>
  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
<td>cn[001-132]</td>
  3) ifort/2019.2.187-GCC-8.2.0-2.31.1  6) intel/2019b      9) Tcl/8.6.9
<td>HP ProLiant SL230s Gen8</td>
 
<td>128</td>
$ ml unload NAMD/2.13-mpi
<td>2 x Intel Xeon E5-2660v2 @ 2,20GHz, 10 cores C./U.</td>
$ ml
<td>46 GB</td>
 
<td>Infiniband FDR
Currently Loaded Modules:
</td></tr>
  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
</tbody></table>
  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
<p><br>
== Limpiar ==
La partición debug es para uso exclusivo de pruebas que duren hasta 30 minutos. Cualquier trabajo que supere ese tiempo es cancelado automáticamente.
Eliminar todos los módulos que previamente se tienen cargados.
</p>
 
<table border="0" style="background:#ffffff" align="top" class="sortable wikitable">
$ ml
<caption align="center" style="background:DarkSlateBlue; color:white"><big><b>Partición debug</b></big>
 
</caption>
Currently Loaded Modules:
<tbody><tr>
  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
<th width="60 px" style="background:Lavender; color:Black">Nodo
  2) binutils/2.31.1  4) ifort/2019.2.187-GCC-8.2.0-2.31.1  6) imkl/2019.2.187
</th>
 
<th width="80 px" style="background:Lavender; color:Black">Modelo
$ ml purge
</th>
$ ml
<th width="80 px" style="background:Lavender; color:Black">Cantidad
No modules loaded
</th>
== Ejemplo simple de un script sbatch ==
<th width="100 px" style="background:Lavender; color:Black">Procesador
Para cargar la versión 3.7 de Python en un script sbatch:
</th>
 
<th width="120 px" style="background:Lavender; color:Black">RAM
#!/bin/bash
</th>
#SBATCH -J example
<th width="140 px" style="background:Lavender; color:Black">Infiniband
#SBATCH -p general
</th></tr>
#SBATCH -n 1
<tr>
#SBATCH -o example_%j.out
<td>leftraru[1-4]</td>
#SBATCH -e example_%j.err
<td>HP ProLiant DL360p Gen8</td>
#SBATCH --mail-user=user@gmail.com
<td>4</td>
#SBATCH --mail-type=ALL
<td>2 x Intel Xeon E5-2660v2 @ 2,20GHz, 10 cores C./U.</td>
<td>59 GB</td>
ml Python/3.7.2
<td>Infiniband FDR
 
</td></tr>
[ETC...]
</tbody></table>
<p><br>

Revisión del 20:48 26 ago 2022

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).

El comando module y ml pueden usarse indistintamente. La segunda forma se utiliza para abreviar y es la que se usará en este tutorial.

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.

$ 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                     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
 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

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:

  1. !/bin/bash
  2. SBATCH -J example
  3. SBATCH -p general
  4. SBATCH -n 1
  5. SBATCH -o example_%j.out
  6. SBATCH -e example_%j.err
  7. SBATCH --mail-user=user@gmail.com
  8. SBATCH --mail-type=ALL

ml Python/3.7.2

[ETC...]