集群环境下module加载模块与作业提交

集群上已安装了软件,却无法调用,权限不足的情况下,往往管理账户会开放一个端口,让我能够只用module命令来加载相关软件。

module使用

管理账户modules的安装

sudo yum install -y environment-modules

module avail 查看当前可用软件

[lusong@ln02 p2p]$ module avail

------------------------------------- /usr/share/Modules/modulefiles --------------------------------------
dot         module-git  module-info modules     null        use.own

----------------------------------------- /share/soft/modulefiles -----------------------------------------
gcc/5.5.0          intel/2018_update1 mvapich2/2.0.1_gcc openmpi/1.8.4_gcc
gcc/6.4.0          mpich/3.1.3_gcc    mvapich2/2.0.1_icc openmpi/1.8.4_icc
gcc/7.2.0          mpich/3.1.3_icc    mvapich2/2.3b_gcc  openmpi/3.0.0_gcc

module list 查看当前已经加载的库

[lusong@ln02 p2p]$ module list
Currently Loaded Modulefiles:
  1) mpich/3.1.3_gcc

module load/unload 加载和卸载库

[lusong@ln02 p2p]$ module list
Currently Loaded Modulefiles:
  1) mpich/3.1.3_gcc
[lusong@ln02 p2p]$ module load  gcc/5.5.0 
[lusong@ln02 p2p]$ module list
Currently Loaded Modulefiles:
  1) mpich/3.1.3_gcc   2) gcc/5.5.0
[lusong@ln02 p2p]$ module unload gcc/5.5.0 
[lusong@ln02 p2p]$ module list
Currently Loaded Modulefiles:
  1) mpich/3.1.3_gcc
[lusong@ln02 p2p]$ 

当然,每次登陆都要先加载可用的包也是很烦的一件事情,我们可以在修改用户目录下的.bashr使得用户在每一次登陆,某些命令都被自动执行一遍。如下:

# .bashrc
# Source global definitions
if [ -f /etc/bashrc ]; then
	. /etc/bashrc
fi
# Uncomment the following line if you don't like systemctl's auto-paging feature:
# export SYSTEMD_PAGER=

# User specific aliases and functions
alias vi='vim'
alias rm='rm -i'
alias cp='cp -i'
alias mv='mv -i'

# MPI and compilers
#export MKLROOT="/share/soft/intel_2017/mkl"
export MV2_ENABLE_AFFINITY=0	# for MVAPICH2+OpenMP
#export OMP_PLACES=cores
#export OMP_PROC_BIND=spread
#----------- Intel compilers
 . /share/soft/intel_2018_update1/bin/compilervars.sh intel64
 . /share/soft/intel_2017/bin/compilervars.sh intel64
#----------- MPI

module purge
module load mvapich2
#module load openmpi
export PATH="/soft/Scripts:$PATH"

# phg
# export PHG_MAKEFILE_INC=/soft/phg/phg-0.9.3-mvapich2-20171209/share/phg/Makefile.inc
# export PHG_LIB_DIR=/share/soft/phg/phg-0.9.3-mvapich2-20171209/lib
export PHG_MAKEFILE_INC=/soft/phg/phg-0.9.4-mvapich2-20180902/share/phg/Makefile.inc
export PHG_LIB_DIR=/share/soft/phg/phg-0.9.4-mvapich2-20180902/lib

#myphg
if [ -f "/share/soft/intel_2018/bin/compilervars.sh" ]; then
	. /share/soft/intel_2018/bin/compilervars.sh intel64
fi

作业提交

bsub提交方式(大作业)

bsub -q batch -n 8 -e tmp.err -o tmp.out ./FFTParallel
bsub -q batch -n 8 -e tmp.err -o tmp.out -I ./FFTParallel

-q表示选择运行程序的队列,使用bqueues可以查看可用队列。 可以查看tmp标准输出和错误输出来查看程序运行情况,文件以追加的形式追加到已有文件末尾。一般程序运行完了或者中断才会产生这两个文件。
-I 表示命令行输出比较干净地输入到tmp文件。

mpirun交互式提交方式(小程序或者调试用)

mpirun -np 2 ./FFTParallel

-I选项交互式提交方式(调试用)

bsub -q batch -n 8 -I ./FFTParallel

当然,以上命令作为命令行命令,当然可以添加到Makefile文件中。bsub的命令都是以b+英文单词的方式提供。比如bqueues、bjobs、bkill、bpeek等,不需要专门记,想想要干嘛,在b后面加上你想要干的事情即可。


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

陆嵩

有打赏才有动力,你懂的。

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值