Wolfram Mathematica

_

Servidor de licencias

El iC1 dispone de 4 licencias de Mathematica 12.0, con 8 kernels cada una (32 kernels en total). Estas licencias se pueden usar directamente en tu ordenador personal, en PROTEUS o en ambos simultáneamente.

A continuación se describen estos tres modos de funcionamiento.

1. Cómo usar Mathematica en un PC

Descarga el software

Puedes descargar la aplicación desde aquí:

Configuración inicial

Una vez instalado, hemos de indicar que estamos usando un servidor de licencias para poder empezar a usar el programa. También deberemos de dar de alta nuestra IP para poder acceder, para lo cual debemos contactar con la administración del sistema

  • Iniciamos el programa y seleccionamos «Other ways to activate»
Activación Mathematica
  • Elegimos la opción correspondiente al Servidor de Licencias en red
Servidor de licencias IC1 Mathematica
  • Y finalmente, escribimos proteusmath.ugr.es en el campo correspondiente
Activación Mathematica

2. Cómo usar Mathematica en PROTEUS

Podemos usar Mathematica en PROTEUS de manera interactiva y como trabajo desatendido. En ambos casos se hace a través del gestor de colas Slurm.

A la sesión gráfica interactiva se accede a través de una plataforma web:

https://gloton.ugr.es/ood

Una vez logeados, iremos a Interactive Apps y seleccionaremos Mathematica. Seleccionaremos los recursos y el tiempo que se van a necesitar y el sistema los reservará. Una vez hecha la reserva (podemos solicitar que nos envíe un email cuando se realice), podremos empezar a usar el programa. Se recomienda aumentar la calidad de imagen y reducir la compresión para mejorar la visualización.

Una vez reservados los recursos, se mostrará esta pantalla donde podemos controlar la calidad de la imagen (a mayor calidad, mayor ancho de banda de red necesario) y lanzar la aplicación.

La segunda opción para usar Mathematica en PROTEUS es como trabajo desatendido, es decir, enviarlo a la cola de trabajos para que sea procesado mediante un script que no necesite interacción con el usuario. La forma de usar esta opción es la habitual que con el resto de trabajos. Solo hay que tener en cuenta solicitar una de las licencias disponibles para el trabajo, cargar el programa en el entorno y usar el correspondiente ejecutable. Ejemplo:

#!/bin/bash

#SBATCH --job-name=test      ## Name of the job.
#SBATCH -p standard          ## partition/queue name
#SBATCH --nodes=1            ## (-N) number of nodes to use
#SBATCH --ntasks=1           ## (-n) number of tasks to launch
#SBATCH --cpus-per-task=1    ## number of cores the job needs
#SBATCH --mem=500            ## 500Mb of memory
#SBATCH --time=00:02:00      ## run time 2 min
#SBATCH --error=slurm-%J.err ## error log file
#SBATCH --licenses=mathematica:1

module load Mathematica
math -run file.m

 

3. Cómo usar el frontend (interfaz gráfica) en un PC y PROTEUS para hacer los cálculos

Con esta opción, podremos usar la interfaz gráfica en nuestro PC (requiere que Mathematica esté instalado) pero que la computación se realice en PROTEUS.

La configuración es un poco más compleja que en los pasos previos. Se basa en la adición de un nuevo kernel siguiendo los siguientes pasos:

  • Pasos previos: descargar el siguiente archivo: mathematicaRemoteKernel
    • Descomprimirlo. Habrá dos archivos: init.m y tunnel.sh
      • init.m: hay que colocarlo en nuestra cuenta de PROTEUS, en ~/.Mathematica/Kernel
      • tunnel.sh: hay que guardarlo en alguna carpeta de nuestro PC, comprobar que tiene permisos de ejecución y anotar el path para posteriormente
  • Añadir un nuevo kernel: en Mathematica, ir a Evaluation->Kernel Configuration Options y darle a añadir un nuevo kernel
  • Editar los parámetros del nuevo kernel: elegir un nombre, por ejemplo RemoteKernelPROTEUS, y seleccionar Advanced Options
    • En Arguments to MLOpen indicar:-LinkMode Listen -LinkProtocol TCPIP -LinkOptions MLDontInteract -LinkHost 127.0.0.1
    • Y en Shell command to launch kernel:"/path-to/tunnel.sh" usuario@proteus.ugr.es:2222 "`linkname`" cores memoria
    • Donde:

      • Hay que indicar el path donde previamente hayamos guardado el fichero tunnel.sh
      • Nuestro usuario en PROTEUS
      • El número de cores que se van a utilizar (normalmente, solo uno, salvo que se esté usando programación paralela)
      • Cantidad de memoria en MB
  • Seleccionar el nuevo kernel: por último, hay que seleccionar el kernel remoto para poder empezar a utilizarlo en Evaluation -> Notebook’s Kernel

MUY IMPORTANTE: si solo vamos a usar el kernel remoto, es importante salir del kernel local. En caso contrario, estaremos usando 2 instancias de las 4 disponibles aunque no lo necesitemos y puede que dejemos a otros compañeros sin posibilidad de usarlo.

Para que este método funcione es imprescindible que si tenemos firewall en nuestro equipo, este no filtre los paquetes provenientes del nodo. Será necesario configurar el firewall para permitir todo el tráfico proveniente de proteusmath.ugr.es.

Si estamos detrás de un router o no puedes configurar el router, una posible solución serla sería crear un tunel SSH.

_

¿Necesitas más información?

_