在linux系统上已经安装好了MS8.0,也设定好了环境变量,可以直接用RunVASTEP.sh -np 24 job_name & 提交作业,但是不能分配节点,qstat也看不到作业。现在想通过qsub用脚本提交ms作业,但是试了好几种脚本,都存在问题:刚把作业提交上,用qstat看,显示Q排队;再过10s就直接显示C完成了,但是文件夹里没输出文件。试了四五种提交任务的脚本,都是这样,不知道什么原因,请大神帮忙调试,谢谢!环境变量.bashrc和几种试过的脚本.pbs会贴在下面和附件中,请大神帮忙,谢谢!
环境变量:
# .bashrc
# Source global definitions
if [ -f /etc/bashrc ]; then
. /etc/bashrc
fi
##module add mpi/openmpi-x86_64
module load intel2016
###source/home/safefs/Soft/intel_parallel_studio_2016_update2/compilers_and_libraries_2016.2.181/linux/mkl/bin/mklvars.sh intel64 mod lp64
#source /safefs/Soft/intel_parallel_studio_2016_update2/bin/compilervars.sh intel64
# set openmpi env
#export OMPI_F77=ifort
#export OMPI_FC=ifort
#OPENMPI=/home/safefs/SoftSrc/openmpi-1.8.1
#export PATH=$OPENMPI/usr/bin:$PATH
#export LD_LIBRARY_PATH=$OPENMPI/lib:$LD_LIBRARY_PATH
#export MANPATH=$OPENMPI/share/man:$MANPATH
# VASP env
#export PATH=/home/safefs/Soft/vasp.5.3/:$PATH
#FC=h5fc
export PATH=$PATH:~/bin
# Uncomment the following line if you don't like systemctl's auto-paging feature:
# export SYSTEMD_PAGER=
# User specific aliases and functions
# MS
export PATH=/sharefs/home/xbtian/Accelrys/MaterialsStudio8.0/etc/CASTEP/bin:$PATH
export PATH=/sharefs/home/xbtian/Accelrys/MaterialsStudio8.0/etc/DMol3/bin:$PATH
".bashrc" [readonly] 41L, 1024C
脚本1(无效):
#!/bin/bash
#PBS -N CASTEP
#PBS -l nodes=1:ppn=16
#PBS -q md
#PBS -o ./output.$PBS_JOBID
#PBS -e ./error.$PBS_JOBID
#PBS -S/bin/bash
#PBS -V
module load intel2016
cd $PBS_O_WORKDIR
mpirun -machinefile $PBS_NODEFILE -n 16 RunCASTEP.sh
脚本2(无效):
#!/bin/bash
#PBS -N CASTEP
#PBS -l nodes=1:ppn=16
#PBS -q md
#PBS -o ./output.$PBS_JOBID
#PBS -e ./error.$PBS_JOBID
#PBS -S/bin/bash
#PBS -V
module load intel2016
cd $PBS_O_WORKDIR
~/Accelrys/MaterialsStudio8.0/etc/CASTEP/bin/RunCASTEP.sh -np 16 SnTe
脚本3(无效):
program=/sharefs/home/xbtian/Accelrys/MaterialsStudio8.0/etc/CASTEP/bin/RunCASTEP.sh
job_name=`ls *.xsd | sed 's/.xsd//g'`
queue=md
echo '#!/bin/bash
#PBS -N '$ln'
#PBS -o '$job_name.log'
#PBS -e '$job_name.err'
#PBS -q '$queue'
#PBS -l nodes=1:ppn=8
#PBS -V
src=$PBS_O_WORKDIR
cd $src
'$program' -np 8 '$job_name'' > $job_name.pbs
echo
for i in `ls *.param | sed 's/.param//g' | grep "$job_name"_`
do
if [ -z $i ]; then
echo "WRONG"
else
echo 'cp '$job_name.check' '$i.check'
'$program' -np 8 '$i' ' >> $job_name.pbs
fi
done
echo '
rm -rf *.pid pid.* *pbs *.log *.err *xms *txt fort* killfile *.check
sleep 2
' >> $job_name.pbs
qsub $job_name.pbs
脚本4(无效):
#!/bin/bash
#PBS -N CASTEP
#PBS -l nodes=1:ppn=16
#PBS -q md
#PBS -o ./output.$PBS_JOBID
#PBS -e ./error.$PBS_JOBID
#PBS -S/bin/bash
#PBS -V
module load intel2016
cd $PBS_O_WORKDIR
./sharefs/home/xbtian/Accelrys/MaterialsStudio8.0/etc/CASTEP/bin/RunCASTEP.sh -np 16 SnTe
脚本5(无效):
#!/bin/bash
#PBS -N CASTEP
#PBS -l nodes=1:ppn=16
#PBS -q md
#PBS -j oe
#PBS -S/bin/bash
#PBS -V
project_name=SnTe
source /safefs/Soft/intel_parallel_studio_2016_update2/compilers_and_libraries_2016.2.181/linux/mpi/intel64/bin/mpivars.sh
source /sharefs/home/xbtian/Accelrys/ms60.sh
cd $PBS_O_WORKDIR
NP=`cat ${PBS_NODEFILE} | wc -l`
$MS_INSTALL_ROOT/bin/mpirun -machinefile $PBS_NODEFILE -np $NP $MS_INSTALL_ROOT/bin/castepexe.exe $project_name
rm -f *.pid
exit 0