Manual de uso

⌘K
  1. Inicio
  2. Documentos
  3. Manual de uso
  4. 6. Entorno Software
  5. Software disponible (Lmod)

Software disponible (Lmod)

En PROTEUS hay disponibles numerosos paquetes de software. Sin embargo, este software no está en el PATH cuando hacemos login. Está instalado pero tenemos que «cargarlo» antes de poder usarlo.

La gestión de grandes instalaciones globales de software presenta los siguientes principales retos:

  • la incompatibilidad de software
  • la convivencia de distintas versiones
  • la gestión de las dependencias

 

Una de las soluciones para este problema es los Environment modules. Un módulo es una descripción auto-contenida de un paquete software, es decir, incluye toda la configuración que se necesita para ejecutar un paquete de software y, en caso necesario, las dependencias de otros paquetes.

En PROTEUS utilizamos como environment module Lmod que proporciona el comando module para interaccionar con los módulos.

Comando Función
module avail Muestra los módulos (software) disponibles
module avail KEYWORD Muestra los módulos que su nombre coincide con ese KEYWORD
module spider KEYWORD Muestra los módulos que su nombre o descripción coincidan con ese KEYWORD
module load APPLICATION Carga un programa específico
module list Muestra los módulos cargados
module swap CURRENT_MODULE DESIRED_MODULE Intercambiar un módulo cargado por otro
module unload APPLICATION Elimina un módulo
module purge Elimina todos los módulos

Módulos por defecto

Para garantizar el correcto funcionamiento, es posible que algunos módulos se carguen por defecto. No debes eliminarlos porque podría afectar a la ejecución de los trabajos.

Módulos y Slurm

Cuando se lanza un programa en Slurm, se copian todas las variables de entorno que se tengan cargados en el momento del envío al nodo de computación. Por ejemplo, si en el momento de enviar está cargado el módulo MPI, éste estará disponible también en el nodo de computación.

También se pueden cargar a través del fichero de descripción de trabajo:

#!/bin/sh
#SBATCH -N 2 #(solicita dos nodos)
#SBATCH -n 2 #(dos tareas en total)
#SBATCH -p short #(solicita la partición específica)
#SBATCH -t 00:00:30 #(30 sec ejecución)

module load intel
srun programa

Sesiones

Las modificaciones hechas a las variables de entorno al usar module no son permanentes y se pierden al cerrar la sesión. Al inicio de cada sesión, habrá que volver a cargarlos. Si utilizas algún modulo de forma frecuente, puede ser preferible añadirlo al profile de la shell, por ejemplo, a tu .bashrc.

¿Cómo podemos ayudarte?