Guía de referencia del clúster HPC ctcomp2

Esta é unha revisión antiga do documento!


# Acceso
ssh -p <port> nome.apelido@ctcomp2.inv.usc.es

# importar
scp -p <port> \
  fich_orixe  \
  nome.apelido@ctXXX.inv.usc.es:~/fich_destino
scp -p <port> -r \
  dir_orixe      \
  nome.apelido@ctXXX.inv.usc.es:~/dir_destino

# exportar
scp -p <port>                                  \
  nome.apelido@ctcomp2.inv.usc.es:~/fich_orixe \
  fich_destino
scp -p <port> -r                              \
  nome.apelido@ctcomp2.inv.usc.es:~/dir_orixe \
  dir_destino
# Gestión de módulos
module avail 
module list
module load <module_name>
module unload <module_name>
module purge
# Compilación GCC
gcc      -O exemplo.c   -o exe
g++      -O exemplo.cpp -o exe
gfortran -O exemplo.f   -o exe
# Compilación OpenMP (+GCC)
gcc      -O -fopenmp exemplo.c   -o exe-omp
g++      -O -fopenmp exemplo.cpp -o exe-omp
gfortran -O -fopenmp exemplo.f   -o exe-omp 
# Compilación OpenMPI (+GCC)
module load openmpi
mpicc  -O exemplo.c    -o exe-mpi   
mpicxx -O exemplo.cpp  -o exe-mpi 
mpif77 -O exemplo.f    -o exe-mpi 
# Manejo de la cola de trabajos 
chmod u+x myjob.sh
qsub myjob.sh
qstat
qstat -q
pbsnodes
qdel <job_id>
qsub -I -q interactive
#!/bin/bash
#
# --- Ejemplo de configuración PBS --- #
#
#PBS -l nodes=1:ppn=1,walltime=1:00:00
#PBS -N proba-PBS
#PBS -e mySTD.err
#PBS -o mySTD.out
#PBS -m ae -M nome.apelido@usc.es
cd $PBS_O_WORKDIR
echo "OK"
#!/bin/bash
#
# --- Ejemplo trabajo secuencial --- #
#
#PBS -l nodes=1:ppn=4,walltime=1:00:00
#PBS -N ej-secuencial
cd $PBS_O_WORKDIR
(cd dir1; ./exec1) &
(cd dir2; ./exec2) &
(cd dir3; ./exec3) &
(cd dir4; ./exec4) &
wait
#!/bin/bash
#
# --- Ejemplo trabajo JAVA --- #
#
#PBS -l nodes=1:ppn=64,walltime=1:00:00
#PBS -N ej-java
cd $PBS_O_WORKDIR
module load java
java executable
#!/bin/bash
#
# --- Ejemplo trabajo OpenMP --- #
#
#PBS -l nodes=1:ppn=64,walltime=1:00:00
#PBS -N ej-openmp
cd $PBS_O_WORKDIR
export OMP_NUM_THREADS=64
./executable 
#!/bin/bash
#
# --- Ejemplo trabajo MPI --- #
#
#PBS -l nodes=2:ppn=64,walltime=1:00:00
#PBS -N ej-mpi
cd $PBS_O_WORKDIR
module load openmpi
mpirun -np 128 ./executable
#/bin/bash
#
# --- Ejemplo trabajo R --- #
#
#PBS -l nodes=1:ppn=1,walltime=1:00:00
#PBS -N ej-R
cd $PBS_O_WORKDIR
module load R
R --no-save < test.R
#/bin/bash
#
# --- Ejemplo trabajo MATLAB --- #
#
#PBS -l nodes=1:ppn=1,walltime=1:00:00
#PBS -N ej-MATLAB
cd $PBS_O_WORKDIR
module load matlab
matlab -r test.m -nodisplay -nosplash -nojvm
# -r:         indicar el fichero a ejecutar.
# -nodisplay: sin display X.
# -nosplash:  sin pantalla inicial de MATLAB.
# -nojvm:     sin entorno java (OPCIONAL)
# (!) Incluir la orden quit al final del fichero