MrBayes via Condor
2007 年 7 月 23 日 改訂
井上 潤

 このページは condor という Supercomputer の管理システムを用いて MrBayes の解析を行うための個人的なメモです.MrBayesに関してはこちらをご覧下さい.



petal では which condor_mb をやっても見つからない.このため phoenix と同じように i686-linux で解析を行う.

[inoue@petal 12tr_53Noto_Fol]$ cat 53Noto_.submit

Universe = standard
# standard universe is default one. You can omit it
Executable = /usr/common/i686-linux/bin/condor_mb
# Use command "which condor_mb" to find out the path of "condor_mb"
Arguments = 12t_53Noto.nex

output = 12t_53Noto.nex.output
error = 12t_53Noto.nex.error
log = 12t_53Noto.nex.log
Queue



BEGIN mrbayes;
charset 1st_pos = 1-3718;
charset 2nd_pos = 3719-7436;
charset tRNA = 7437-8870;
charset rRNA = 8871-10813;
partition region =4:1st_pos,2nd_pos,tRNA,rRNA;
set partition=region;
lset nst=6 rates=invgamma;
prset ratepr=variable;
unlink shape=(all) pinvar=(all) statefreq=(all) revmat=(all);
log start filename=log;
mcmc ngen=3000000 printfreq =1000 samplefreq= 100 nchains=4
savebrlens=yes;
END;



mb を独自にコンパイルして condor で mb を走らせる場合,Make ファイルの 28 行目を以下のように no としてコンパイルを行う.この場合,混乱を防ぐために mb は名前を変えた方が良いらしい.
[inoue@petal ~/mrbayes-3.1.2paul]$ pwd
/home/inoue/mrbayes-3.1.2paul

Makefile_mb.txt
_mb.txt を取り除いて使用する.

# set to yes if you want to use the readline library (make sure you have it
# installed on your machine)
# defaults to yes for unix machines
ifeq ($(strip $(ARCHITECTURE)), unix)
USEREADLINE ?= no

以下は paul が Makefile を書き直し,コンパイルをやり直してくれたコマンド.
[inoue@petal ~/mrbayes-3.1.2]$ vi Makefile
[inoue@petal ~/mrbayes-3.1.2]$ make clean
rm -f *.o
[inoue@petal ~/mrbayes-3.1.2]$ make
mpicc -DUNIX_VERSION -DMPI_ENABLED -O3 -Wall -c -o mb.o mb.c
mpicc -DUNIX_VERSION -DMPI_ENABLED -O3 -Wall -c -o mcmc.o mcmc.c
mpicc -DUNIX_VERSION -DMPI_ENABLED -O3 -Wall -c -o bayes.o bayes.c
mpicc -DUNIX_VERSION -DMPI_ENABLED -O3 -Wall -c -o command.o command.c
mpicc -DUNIX_VERSION -DMPI_ENABLED -O3 -Wall -c -o mbmath.o mbmath.c
mpicc -DUNIX_VERSION -DMPI_ENABLED -O3 -Wall -c -o model.o model.c
mpicc -DUNIX_VERSION -DMPI_ENABLED -O3 -Wall -c -o plot.o plot.c
mpicc -DUNIX_VERSION -DMPI_ENABLED -O3 -Wall -c -o sump.o sump.c
mpicc -DUNIX_VERSION -DMPI_ENABLED -O3 -Wall -c -o sumt.o sumt.c
mpicc -DUNIX_VERSION -DMPI_ENABLED -O3 -Wall mb.o bayes.o command.o mbmath.o mcmc.o model.o plot.o sump.o sumt.o -lm -o mb



condor で mb を動かすときの another trick
[inoue@petal MrBayes_MamFla2_fol]$ pwd
/home/inoue/MamAct_COX-Cyb_EstAAMatrix_fol/Tree_Search_fol/Mam_fol/2partitions_fol/MrBayes_MamFla2_fol
Make ファイルの 96 行目の下に,以下の赤いラインを付け足してコンパイルを行う.
clean:
rm -f *.o

showdep:
@$(CC) -MM bayes.c command.c mbmath.c mcmc.c model.c plot.c sump.c sumt.c

mb: mb.o bayes.o command.o mbmath.o mcmc.o model.o plot.o sump.o sumt.o
condor_compile gcc -DUNIX_VERSION -O3 -Wall mb.o bayes.o command.o mbmath.o mcmc.o model.o plot.o sump.o sumt.o -lm -o mb

condor のバッチファイルは standard にする
initialdir = /home/inoue/MamAct_COX-Cyb_EstAAMatrix_fol/Tree_Search_fol/Mam_fol/2partitions_fol/MrBayes_MamFla2_fol
Rank = kflops

Executable = ./mb_MamFla2
Universe = standard
requirements = (OpSys =="LINUX" && Arch =="X86_64")

should_transfer_files = YES
when_to_transfer_output = ON_EXIT_OR_EVICT
transfer_input_files = MamExTr.nex

arguments = MamExTr.nex
notification = NEVER
output = Mb.out
error = Mb.errror
log = Mb.log

Queue
コンパイルが終わると,screen out の最後に長い文章が出てくる.

・・・・・
gcc -DUNIX_VERSION -O3 -Wall -c -o sumt.o sumt.c
condor_compile gcc -DUNIX_VERSION -O3 -Wall mb.o bayes.o command.o mbmath.o mcmc.o model.o plot.o sump.o sumt.o -lm -o mb
LINKING FOR CONDOR : /usr/bin/ld -L/opt/condor/lib -Bstatic --eh-frame-hdr -m elf_x86_64 -dynamic-linker /lib64/ld-linux-x86-64.so.2 -o mb /opt/condor/lib/condor_rt0.o /usr/lib/gcc/x86_64-redhat-linux/3.4.4/../../../../lib64/crti.o /usr/lib/gcc/x86_64-redhat-
・・・・・・