¡Esta es una revisión vieja del documento!
Tabla de Contenidos
INSTALACIÓN DE FLASH
EN COMPUTADORA PERSONAL
1. Registrarse en la Universidad de Chicago: FLASH
2. Luego, se enviará por mail la aceptación y se podrá bajar el código: FLASH
3. Descomprimir el tar.gz bajado en el lugar donde se va a querer trabajar.
4. Instalar fortran, c, mpif90. Para éste último, instalar mpich.
5. Flash necesita la librería hdf5 1.8.12. Instalación como root: bajar, descomprimir, y hacer
- ./configure --prefix=/usr/local/hdf5
- make
- make install
EN LOS CLUSTERS
1. Ya está instalado. Sólo levantar los módulos que se detallan en la sección “Uso de Flash”
USO DE FLASH
Manual de usuario: manual de FLASH
1. El Makefile.h que usa para compilar el programa está en: /lugardeinstalacion/FLASHX.X/sites/Prototypes/Linux Allí hay varios ejemplos de makefiles. Para nuestro ejemplo utilizaremos un makefile que llamaremos Makefile.h.escogido. Iremos a la carpeta “site”.
- cd /lugardeinstalacion/FLASHX.X/sites/
Ejecutar el siguiente comando.
- mkdir $HOSTNAME
Eso creará una carpeta que se llama como el nombre de la maquina en /sites. Copiar en esa carpeta el Makefile.h.elegido. Renombrar este archivo a Makefile.h.
- cd /lugardeinstalacion/FLASHX.X/sites/Prototypes/Linux/
- cp Makefile.h.elegido /lugardeinstalacion/FLASHX.X/sites/Makefile.h
2. Módulos a cargar en las diferentes máquinas:
clemente:
- module load gcc
- module load openmpi
- module load hypre
- module load hdf5
- module load flash
mulatona (mulatona.ccad.unc.edu.ar)
- module load gcc/7
- module load flash/4.4
mendieta (mendieta.ccad.unc.edu.ar)
- module load flash/4.5
3. Cómo compilar el programa: En /lugardeinstalacion/FLASHX.X/./setup magnetoHD/proyecto -auto -parfile=flash.par +usm threadBlockList=True -objdir=object -site=clemente -2d -maxblocks=5000 -nxb=20 -nyb=10
- parfile: archivo de parámetros
- +usm: se activa el Unsplit Staggered Method. Este metodo evalua los campos en las caras, para hacer una correcta limpieza de los monopolos magnéticos.
- threadBlockList:
- -objdir: directorio donde se crearán los objetos para compilar
- -site: nombre de la máquina donde se correrá. Si no se pone nada, por default es la máquina donde estamos
- -2d: corrida bidimensional
- maxblocks: número máximo de bloques permitidos
- nxb, nyb: número de celdas por bloque.
Luego compilar haciendo:
- cd /lugardeinstalacion/FLASHX.X/object/
- make -j 16
4. Cómo correr el programa
a) Máquinas con trabajos en cola → clemente, mulatona (uso exclusivo del IATE) y mendieta (cluster UNC) Para correr el programa, usar los diferentes script según la maquina . Se deben copiar los submit_job_maquina.sh en las carpetas donde se crean los objetos de la compilación. Luego correrlos con: sbatch submit_job_maquina.sh
Tutorial de Slurm
b) Para correr en las máquinas sin trabajos en cola:
- cd /lugardeinstalacion/FLASHX.X/object/
- mpirun -np 8 ./flash4