Herramientas de usuario

Herramientas del sitio


modules

Modules


Modulos de software


El acceso a los programas instalados en los clusters se realiza a través de Environment Modules.

- Para ver los módulos disponibles: module avail

- Para cargar un módulo: module load nombre_del_modulo

- Para ver una lista de módulos cargados: module list

- Para quitar un módulo: module unload nombre_del_modulo

- Para quitar todos los módulos cargados: module purge

Ejemplo: Cargar compiladores Fortran


Comenzando sin módulos

[usuario@mendieta ~]$ ifort --version
-bash: ifort: command not found
[usuario@mendieta ~]$ module list
No Modulefiles Currently Loaded.

Viendo los módulos disponibles

[usuario@mendieta ~]$  module avail 

-------------------------- /opt/modules/aplicaciones ---------------------------
espresso/5.0.3    gromacs/2016.1    lammps/2016.11.17 openfoam/4.1
espresso/5.4.0    gromacs/5.0.2     openfoam/2.4      siesta/4.0

-------------------------- /opt/modules/compiladores ---------------------------
gcc/5(default)      jdk/8u121(default)
intel/2016(default) xeonphi/2016

------------------------------- /opt/modules/gpu -------------------------------
cuda/8.0(default)

-------------------------- /opt/modules/herramientas ---------------------------
autoconf/2.69(default) bison/3.0.4(default)   gdb/7.11(default)
automake/1.15(default) cmake/3.7.1(default)
binutils/2.27(default) flex/2.6.0(default)

Eligiendo un compilador

[usuario@mendieta ~]$ module load intel/2016
[usuario@mendieta ~]$ module list
Currently Loaded Modulefiles:
1) /opt/modules/sistema/licencias/intel   2) /opt/modules/sistema/libintel/2016     3) intel/2016(default)

[usuario@mendieta ~]$ ifort --version
ifort (IFORT) 16.0.4 20160811
Copyright (C) 1985-2016 Intel Corporation.  All rights reserved.

Limpiando el entorno y volviendo a cero

[usuario@mendieta ~]$ module purge
[usuario@mendieta ~]$ module list
No Modulefiles Currently Loaded.
[usuario@mendieta ~]$ ifort --version
-bash: ifort: command not found

Eligiendo otro compilador

[usuario@mendieta ~]$ module load gcc/5
[usuario@mendieta ~]$ gfortran --version
GNU Fortran (GCC) 5.4.0

Copyright (C) 2015 Free Software Foundation, Inc.
GNU Fortran comes with NO WARRANTY, to the extent permitted by law.
You may redistribute copies of GNU Fortran
under the terms of the GNU General Public License.

For more information about these matters, see the file named COPYING

Toolchains disponibles


Las toolchains soportadas para compilación en los clusters son:

Cluster Compiladores MPI
Mendieta GCC 5
Intel Parallel Studio XE 2016
CUDA 8.0
Open MPI 2
Eulogia Intel Parallel Studio XE 2018
GCC 7 (soporte limitado)
Open MPI 3
Mulatona GCC 7 Open MPI 3
Serafín GCC 11
AMD AOCC 3.1
Open MPI 4

Preguntas frecuentes


  • ¿Qué flags de compilación utilizo para mejor performance?

El módulo de cada compilador incluye flags de compilación adecuados (aunque conservadores) para dicho compilador. Estos se pueden ver corriendo “env | grep FLAGS” después de cargar el módulo correspondiente.

  • ¡No veo ninguna biblioteca!

Es necesario cargar el módulo del compilador a utilizar para poder ver las bibliotecas disponibles para dicho compilador.

  • La biblioteca o aplicación que necesito no está disponible, ¿qué hago?

Enviar mail a soporte@ccad.unc.edu.ar para que la instalemos.

  • ¿Por qué no instalaron una versión más nueva de tal herramienta?

Las versiones elegidas son las más nuevas posibles al momento de la instalación del software del cluster. Agregar versiones de compiladores multiplica la cantidad de bibliotecas a compilar y para las que dar soporte, por lo que sólo se hace de ser extremadamente necesario.

  • ¿Por qué no instalaron Clang en vez de GCC o ICC?

Porque la suite de compiladores de LLVM no tiene un compilador Fortran estable todavía. Estamos siguiendo el progreso de Flang.

  • ¿Por qué no eligieron MVAPICH2 o Intel MPI como MPI?

Porque queremos un único MPI para todos los clusters, y algunas aplicaciones no los soportan.

  • Necesito otra versión de los compiladores disponibles para mi aplicación. ¿Qué puedo hacer?

Los usuarios pueden compilar e instalar toolchains propias en sus homes. Recomendamos utilizar Spack para estas situaciones.

  • ¡Necesito Python con un conjunto de módulos particulares y el Python instalado es muy viejo!

Actualmente no tenemos una solución genérica a este problema que satisfaga a la mayor cantidad posible de usuarios. Recomendamos que los usuarios instalen su propio intérprete Python con los paquetes que requieran en sus propios homes utilizando herramientas como Miniconda.

modules.txt · Última modificación: 2021/11/18 12:14 por cbederian