-- AdminUser - 02 Dec 2024
Ejecutar Cp2k en una sesion Interactiva con salloc

Otra Documentacion: https://wikicecc.unal.edu.co/bin/view/HPC/TrabajosInteractivos

En este ejemplo se ejecuta una sesion interactiva para depurar, usando el comando salloc que; primero ubicara y asignara los recursos.

1. use salloc para usar un(1) nodo del cluster fisica por 30 minutos y ejecutar una(1) tarea en la particion "cpu.cecc"

cog salloc --cluster=fisica --partition=cpu.cecc --nodes=1 --ntasks=1 --mem=10G --time=00:30:00
help

Container CUDA: /localapps/cp2k_2024.3_openmpi_generic_cuda_P100_psmp.sif
Container CPU: /localapps/cp2k_2024.3_openmpi_skylake-avx512_psmp.sif

download dataset H2O -dft-ls.NREP4 : wget https://raw.githubusercontent.com/cp2k/cp2k/v7.1.0/benchmarks/QS_DM_LS/H2O-dft-ls.NREP4.inp

2. Con ssh ingrese al nodo asignado

3. Una vez ha ingresado al nodo asignado, ejecute singularity para usar una shell en el container:
cog singularity shell /localapps/cp2k_2024.3_openmpi_skylake-avx512_psmp.sif
help

presentation Video:

Ejecutar Cp2k en un envio por lotes sbatch: cp2k con CPU

En este ejemplo se enviar un trabajo que usa 32 CPU, 40Gb de RAM, por un tiempo Maximo de 1 hora

Procedimiento:

1. En un Directorio Nuevo coloque todos los datos a procesar.

2. En el Directorio con sus datos genere un script con las lineas:
#!/bin/bash 
#SBATCH --job-name=cp2test #Nombre del Trabajo 
#SBATCH --cluster=qteorica #nombre de los clusteres a donde envia a procesar 
#SBATCH --partition=rack #Particion a usar(puede ser: cpu.cecc o gpu.cecc) 
##SBATCH --time=01:00:00 #Tiempo que usara los recursos(--time=DD-:HH:MM:SS) 
#SBATCH --nodes=1 #Numbero de nodos a usar 
#SBATCH --ntasks=32 #CPU por tarea >1 si usa multihilado(threads) 
#SBATCH --mem=40G #Total de memoria RAM por nodo en Gbytes 
#SBATCH --output=/homes/qteorica/localquimica/cp2test_%j.out #archivo salida estandar(seguimi> 
#SBATCH --error=/homes/qteorica/localquimica/cp2test_%j.err #archivo salida de Errores 
###SBATCH --mail-type=begin #Send email when job begins 
###SBATCH --mail-type=end #Send email when job ends 
###SBATCH --mail-user=user@unal.edu.co 
#SBATCH --export=SCRATCH_DIR=/scratch/$SLURM_JOB_ACCOUNT/$SLURM_JOB_USER/$SLURM_JOB_ID 
 
export OMP_NUM_THREADS=8 ##es el numero de hilos 
unset SINGULARITY_BINDPATH 
export SINGULARITY_BINDPATH="/scratch:/scratch" 
cd $SCRATCH_DIR 
srun --mpi=pmix_v4 -N 1 -n 4 /usr/local/bin/singularity run /localapps/cp2k_2024.3_openmpi_skylake-avx512_psmp.sif cp2k H2O-dft-ls.NREP4.inp 2>&1 >>cp2k.log.txt

3. Envie a procesar con:
cog sbatch script.sh
4. Verifique en la cola de procesamiento con squeue

presentation Video: cp2k.lorLotesCPU.mkv
Ejecutar Cp2k en un envio por lotes sbatch: cp2k con GPU

1. En un Directorio Nuevo coloque todos los datos a procesar.

2. En el Directorio con sus datos genere un script con las lineas:

#!/bin/bash 
#SBATCH --job-name=cp2test               #Nombre del Trabajo 
#SBATCH --cluster=qteorica               #nombre de los clusteres a donde envia a procesar 
#SBATCH --partition=rack                 #Particion a usar(puede ser: cpu.cecc o gpu.cecc) 
##SBATCH --time=01:00:00                 #Tiempo que usara los recursos(--time=DD-:HH:MM:SS) 
#SBATCH --nodes=1                        #Numero de nodos a usar 
#SBATCH --gres=gpu:1                     #Numero de GPU a usar en el nodo
#SBATCH --ntasks=16                      #CPU por tarea >1 si usa multihilado(threads) 
#SBATCH --mem=40G                        #Total de memoria RAM por nodo en Gbytes 
#SBATCH --output=/homes/qteorica/localquimica/cp2test_%j.out #archivo salida estandar(seguimi> 
#SBATCH --error=/homes/qteorica/localquimica/cp2test_%j.err  #archivo salida de Errores 
###SBATCH --mail-type=begin     #Send email when job begins 
###SBATCH --mail-type=end       #Send email when job ends 
###SBATCH --mail-user=juagudeloo@unal.edu.co 
#SBATCH --export=SCRATCH_DIR=/scratch/$SLURM_JOB_ACCOUNT/$SLURM_JOB_USER/$SLURM_JOB_ID 
#NOTA:To control the number of OpenMP threads, set the env variable OMP_NUM_THREADS
# Now, if you need to balance between MPI and OpenMP, you should use the executable  
# mpirun -n 2 cp2k -i inp.inp -o -out.out : but with "slurm" exec  "srun -n 2"
 
export OMP_NUM_THREADS=1  ##es el numero de hilos 

 unset SINGULARITY_BINDPATH  
         export SINGULARITY_BINDPATH="/scratch:/scratch,/home:/home"  
            cd  $SCRATCH_DIR 
   srun --mpi=pmix_v4  -N 1 -n 1 /usr/local/bin/singularity exec --nv  /localapps/cp2k_2024.3_openmpi_generic_cuda_P100_psmp.sif cp2k H2O-dft-ls.NREP4.inp  2>&1 >>cp2k.log.txt   

3. Envie a procesar con:

cog sbatch script.sh
4. Verifique en la cola de procesamiento con squeue
Topic revision: r8 - 04 Dec 2024, AdminUser
This site is powered by FoswikiCopyright © by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding Foswiki? Send feedback