|||
组里的小服务器坏了,两三天无米下锅。前天从老岳那里要了他在台里计算机集群的账号,准备在集群上试试水。在计算机集群上做计算和在单机上不同,除了编译程序可以在控制节点上进行,计算都必须放到计算节点上去。怎么弄?得用任务管理的程序,就是qsub、bsub之类。
集群的手册上有一个示例脚本,但是我拿过来用不了。因为脚本里运行的是gadget2,我得改成我自己要运行的程序。我原来一直想试着用用MHD模拟程序athena,所以借此机会就试一试。下载,安装都非常简单,要做计算的时候得稍微注意一下,对不同的问题在配置的时候得有相应变化,然后编译,得到可执行文件之后,运行的时候还得用相应的输入文件。理解这个过程以后就可以修改bsub脚本了。
bsub脚本开头就是指定计算的参数。
BSUB -q cpu_test
指定计算的队列名,这个得问管理员。队列名定了之后,计算单元的数量也就定了,二者必须匹配!这个也得问管理员。
BSUB -n 30
其他的就不是很关键了。真正运行程序的一句是
mpirun $exefile -i \$infile > Report0 2> Error0
意思就是运行需要mpi,执行\$exefile,输入文件是$infile,标准输出放到文件Report0中,出错信息放到文件Error0中。于是,最终,我的脚本如下。
#!/bin/sh
# BSUB -q cpu_test
# BSUB -a openmpi-qlc
# BSUB -R 'select[type==any] span[ptile=6]'
# BSUB -o athena_out.test
# BSUB -n 30
cd /~/compute/1D-hydro
infile="/~/Athena/athena4.1/tst/1D-hydro/athinput.sod"
exefile="/~/Athena/athena4.1/bin/athena"
mpirun \$exefile -i \$infile > Report0 2> Error0
Archiver|手机版|科学网 ( 京ICP备07017567号-12 )
GMT+8, 2024-11-23 10:21
Powered by ScienceNet.cn
Copyright © 2007- 中国科学报社