Amber12-bf7 for UV2000
ウェブページ
バージョン
Amber 12 bugfix 7 + AmberTools 12 bugfix 5
ビルド環境
- Intel Compiler 11.1.080
- SGI MPT 2.07
ビルドに必要なファイル
- Amber12.tar.bz2
- AmberTools12.tar.bz2
- http://ambermd.org/bugfixes12.htmlにあるパッチ
- http://ambermd.org/bugfixesat.htmlにあるパッチ
コンパイラーラッパーコマンドの準備
/home/users/$USER/compiler/ccuv/intel-11.1に配置する。
mpicc
#!/usr/bin/perl#
use strict;
use warnings;
my @extra;
my $compiler = "/opt/sgi/mpt/mpt-2.05/bin/mpicc";
for (my $i = 0; $i < scalar(@ARGV); ++$i) {
if ($ARGV[$i] eq "-o") {
@extra = ("-Wl,--disable-new-dtags",
"-Wl,-rpath,/opt/intel/Compiler/11.1/080/lib/intel64",
"-Wl,-rpath,/opt/intel/Compiler/11.1/080/mkl/lib/em64t");
}
}
system($compiler, @extra, @ARGV);
mpif90
#!/usr/bin/perl
#
use strict;
use warnings;
my @extra;
my $compiler = "/opt/sgi/mpt/mpt-2.05/bin/mpif90";
for (my $i = 0; $i < scalar(@ARGV); ++$i) {
if ($ARGV[$i] eq "-o") {
@extra = ("-Wl,--disable-new-dtags",
"-Wl,-rpath,/opt/intel/Compiler/11.1/080/lib/intel64",
"-Wl,-rpath,/opt/intel/Compiler/11.1/080/mkl/lib/em64t");
}
}
system($compiler, @extra, @ARGV);
icc
#!/usr/bin/perl
#
use strict;
use warnings;
my @extra;
my $compiler = "/opt/intel/Compiler/11.1/080/bin/intel64/icc";
for (my $i = 0; $i < scalar(@ARGV); ++$i) {
if ($ARGV[$i] eq "-o") {
@extra = ("-Wl,--disable-new-dtags",
"-Wl,-rpath,/opt/intel/Compiler/11.1/080/lib/intel64",
"-Wl,-rpath,/opt/intel/Compiler/11.1/080/mkl/lib/em64t");
}
}
system($compiler, @extra, @ARGV);
icpc
#!/usr/bin/perl
#
use strict;
use warnings;
my @extra;
my $compiler = "/opt/intel/Compiler/11.1/080/bin/intel64/icpc";
for (my $i = 0; $i < scalar(@ARGV); ++$i) {
if ($ARGV[$i] eq "-o") {
@extra = ("-Wl,--disable-new-dtags",
"-Wl,-rpath,/opt/intel/Compiler/11.1/080/lib/intel64",
"-Wl,-rpath,/opt/intel/Compiler/11.1/080/mkl/lib/em64t");
}
}
system($compiler, @extra, @ARGV);
ifort
#!/usr/bin/perl
#
use strict;
use warnings;
my @extra;
my $compiler = "/opt/intel/Compiler/11.1/080/bin/intel64/ifort";
for (my $i = 0; $i < scalar(@ARGV); ++$i) {
if ($ARGV[$i] eq "-o") {
@extra = ("-Wl,--disable-new-dtags",
"-Wl,-rpath,/opt/intel/Compiler/11.1/080/lib/intel64",
"-Wl,-rpath,/opt/intel/Compiler/11.1/080/mkl/lib/em64t");
}
}
system($compiler, @extra, @ARGV);
ビルド手順
#!/bin/csh -fumask 022
# 作業場所の設定
set work="/week/users/${USER}"
setenv AMBERHOME "$work/amber12"
# 以前の残骸を消去する
if (-d $AMBERHOME) then
mv $AMBERHOME $work/amber12-erase
rm -rf $work/amber12-erase &
endif
setenv DO_PARALLEL "mpirun -np 2"
#
cd $work
bunzip2 -c /home/users/${USER}/build/amber12/AmberTools12.tar.bz2 | tar xf -
bunzip2 -c /home/users/${USER}/build/amber12/Amber12.tar.bz2 | tar xf -
cd $AMBERHOME
foreach i (/home/users/${USER}/build/amber12/patches/Amber*/*)
patch -p0 < $i
end
#
# 言語を英語にしないとコンパイラーのバージョン番号取得に失敗する
setenv LANG C
# 環境変数SSE_TYPESは-ax${SSE_TYPES}を設定することを意味するので設定しない
unsetenv SSE_TYPES
# インテルコンパイラー12では
# rism1dがハングアップする?
# mpiではテストが通らない
source /opt/intel/Compiler/11.1/080/bin/iccvars.csh intel64
source /opt/intel/Compiler/11.1/080/bin/ifortvars.csh intel64
# icc, icpc, ifortのオプションに-Wl,-rpath,/opt/intel...を加える
set path=(/home/users/$USER/compiler/ccuv/intel-11.1 $path)
#
echo "[CPU serial edition]"
./configure --no-updates intel
make -j 16 install
#make test
make clean
echo "[CPU parallel edition]"
./configure --no-updates -mpi intel
make -j 16 install
make test
make clean