linux写脚本实现作业检查,救大神帮忙调试linux系统上用qsub提交MS作业的脚本,万分感激!!! - 第一原理 - 小木虫 - 学术 科研 互动社区...

在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

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值