問題:
一般VASP計算時采用MPI多進程并行計算,而LOBSTER只能進行多線程并行計算,如何提交?
解決方法:
export OMP_NUM_THREADS=8
lobster-3.2.0 > lobster.log &
注意:
這里的GPU服務器有兩個CPU,每個CPU有4個核,以上提交方法是在沒有任務排隊的情況下運行。
當有別人已有計算任務在算時,占用了CPU0,這時自己再提交任務則提交到CPU1,可以設(shè)置線程數(shù)為4,進行加速。
當正在計算的任務是自己的時候,占用了CPU0,再計算時線程數(shù)最多只能是CPU0上剩余的核數(shù)。
附件:
提交LOBSTER時的pbs腳本。
#!/bin/bash
#PBS -N jobname
#PBS -q batch
#PBS -l walltime=100:00:00
#PBS -l nodes=1:pq:ppn=8
#PBS -r n
#PBS -j oe
#PBS -o /home/shsun/feedback
#PBS -m bea
export NPROCS=`wc -l < $PBS_NODEFILE`
echo ------------------------------------------------------
echo 'This job is allocated on '${NPROCS}' cpu(s)'
echo 'Job is running on node(s): '
cat $PBS_NODEFILE
echo ------------------------------------------------------
echo PBS: qsub is running on $PBS_O_HOST
echo PBS: originating queue is $PBS_O_QUEUE
echo PBS: executing queue is $PBS_QUEUE
echo PBS: working directory is $PBS_O_WORKDIR
echo PBS: execution mode is $PBS_ENVIRONMENT
echo PBS: this script pid is $$
echo PBS: job identifier is $PBS_JOBID
echo PBS: job name is $PBS_JOBNAME
echo PBS: node file is $PBS_NODEFILE
echo PBS: current home directory is $PBS_O_HOME
echo PBS: PATH = $PBS_O_PATH
echo ------------------------------------------------------
cd $PBS_O_WORKDIR
export OMP_NUM_THREADS=8
date
lobster-3.2.0 > lobster.log
#MPIRUN=/home/pub/MPI/openmpi/1.6.4/bin/mpirun
#VVASP=vasp-gpu-vtst5.4.x
#VASP=/home/pub/bin/$VVASP
#$MPIRUN -np 3 $VASP > vasp.log
#tar czvf chg.tgz CHG
#rm CHGCAR WAVECAR
#rm CHG* WAVE*
date