10
4

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

pmemd24とambertools25のインストール方法

Last updated at Posted at 2022-05-07

環境

以下の環境で確認しました

  • macOS 15.4.1 (Sequoia), Apple M3 Pro
  • Xcode 16.3, Build version 16E140
  • ターミナルからHomebrewをインストールしてある
  • ターミナルからxcode-select --installでCommand Line Toolsをインストールしてある(必要)

Note

2025年4月29日にpmemd24ambertools25がリリースされました( http://ambermd.org/GetAmber.php)。

重要なこととして、これまでのインストール方法から大きく変化しています。これまではAMBERとAmberToolsが、別のファイルとしてダウンロードしてくるとはいえ、展開したときのディレクトリ名がamberXXと同じ名前になっていましたが、今回からはpmemd24.tar.bz2ambertoosl25.tar.bz2をそれぞれ展開すると

  • 高速なMDシミュレーションを実行するパッケージはpmemd24_src
  • 解析ツール群のambertools25_src

に分かれました。インストール方法はほぼ共通です。

macOSへのインストール方法

ambertools25

公式からソースコードのpmemd24.tar.bz2ambertoosl25.tar.bz2を入手していることが前提です。

以下の処理を先にしておく必要があります。

  • XcodeXcode command line developer toolsをインストールしておく。XcodeはApp storeからダウンロードします。Xcode command line developer toolsはターミナルからxcode-select --installを入力し、その後指示に従います。さらにターミナルからsudo xcodebuild -license acceptも追加で入力が必要
  • ↑現在不要みたい

以下インストール手順です。

  • 2025年5月26日:Homebrewのデフォルトがgcc-15に変更された影響で、gfortran-15ではambertools25のビルドが失敗することを確認。ambertools25のビルドにはgcc-13を使うことが推奨される
  • 最新のcmake 4.0が入っている状態では-DCMAKE_POLICY_VERSION_MINIMUM=3.5を追加する
# macOSのHomebrewで必要なソフトウェアをインストールしておく。
brew install cmake gcc gcc@13 wget open-mpi gnu-sed
# ダウンロードしてきたソースコードをtar jxvfで解凍する
tar jxvf ambertools25.tar.bz2
cd ambertools25_src
# updateを実行する
# gnu-sedを利用して1行目のshebangを/usr/bin/pythonから/usr/bin/python3に変更
gsed -i -e "s/env python/env python3/g" update_amber
./update_amber --update

# cmake用のbuildディレクトリに入る
cd build

# gcc-13を一時的に使うための設定
ln -sf /opt/homebrew/opt/gcc@13/bin/gfortran-13 /opt/homebrew/bin/gfortran
###############################
# ここが最重要の設定。-DCMAKE_INSTALL_PREFIXにインストール先ディレクトリを指定する
# 下の例はホームディレクトリ以下のapps/ambertools25にインストールする設定。
# gcc-13を使っている場合、MPI=TRUEではうまく動作しないことがあるためFALSEにする必要がある
# 基本的にはbuild/run_cmakeの中に書かれているとおりに実行すれば良いが、最新のcmake 4.0が入っている状態では`-DCMAKE_POLICY_VERSION_MINIMUM=3.5`を追加することだけ必要。
###############################
AMBER_PREFIX=$(dirname $(dirname `pwd`))
cmake $AMBER_PREFIX/ambertools25_src \
    -DCMAKE_INSTALL_PREFIX=$AMBER_PREFIX/ambertools25 \
    -DCOMPILER=CLANG -DBLA_VENDOR=Apple \
    -DMPI=FALSE -DCUDA=FALSE -DINSTALL_TESTS=TRUE \
    -DDOWNLOAD_MINICONDA=TRUE \
    -DFORCE_DISABLE_LIBS="boost" \
    -DCMAKE_POLICY_VERSION_MINIMUM=3.5 \
    2>&1 | tee cmake.log

ここで設定ミスによってconfigure incompleteになってしまった場合は、buildディレクトリの中で./clean_buildを実行し、設定を初期化してから改めてやり直したほうが良いです。

コンパイラ設定も確認してみます。

--                               Compilers:
-- The C compiler identification is AppleClang 17.0.0.17000013
-- The CXX compiler identification is AppleClang 17.0.0.17000013
-- The Fortran compiler identification is GNU 13.3.0

2025年5月26日現在、Fortran compilerはGNU 13.3が推奨です。15以上ではコンパイルに失敗します。
Configureが正常終了していることを確認したらmakeとインストールを実行します。

# Configureが正常終了していることを確認したらmakeとインストールを実行する
make -j8 install

インストールが終わったら、AMBERのプログラムコマンドをいつでも使えるようにするために、~/.bash_profileecho $SHELLと打ってみて最後がbashの場合)または~/.zshrcecho $SHELLと打ってみて最後がzshの場合。macOS Catalinaを使っているヒトはzshがデフォルトになっているはず)のどちらかのファイルに(なければ作成する)、以下のように書き込みます。

# for ambertools25
test -f ${HOME}/apps/ambertools25/amber.sh && source ${HOME}/apps/ambertools25/amber.sh

これでターミナルの起動時にambertools25のコマンドがいつでも使えるようになっているはずです。ターミナルを再起動してみたときにecho $AMBERHOMEと打ってみてAMBERをインストールしたパス(/Users/username/apps/ambertools25みたいな感じ)が表示されれば成功です。

$ echo $AMBERHOME
/Users/moriwaki/apps/ambertools25
$ which cpptraj
/Users/moriwaki/apps/ambertools25/bin/cpptraj

pmemd24

上記のambertools25とほぼ同じです。

なぜか私が最初期にダウンロードしたpmemd24.tar.bz2ファイルは中身が異なっていました(アップデータが古いままになっているなど)。正しいMD5ハッシュは以下の通りなので、確かめておきましょう。

$ md5sum pmemd24.tar.bz2
999d2bb64c97d3849938c6b4e35aa36f  pmemd24.tar.bz2
# macOSのHomebrewで必要なソフトウェアをインストールしておく。
brew install cmake gcc gcc@13 wget open-mpi gnu-sed
# ダウンロードしてきたソースコードをtar jxvfで解凍する
tar jxvf pmemd24.tar.bz2
cd pmemd24_src
# updateを実行する
# gnu-sedを利用して1行目のshebangを/usr/bin/pythonから/usr/bin/python3に変更
gsed -i -e "s/env python/env python3/g" update_amber

# cmake用のbuildディレクトリに入る
cd build
# run_cmakeファイルの中のやり方に、-DCMAKE_POLICY_VERSION_MINIMUM=3.5を追加。
AMBER_PREFIX=$(dirname $(dirname `pwd`))
cmake $AMBER_PREFIX/pmemd24_src \
    -DCMAKE_INSTALL_PREFIX=$AMBER_PREFIX/pmemd24 \
    -DCOMPILER=CLANG -DBLA_VENDOR=Apple \
    -DMPI=TRUE -DCUDA=FALSE -DINSTALL_TESTS=TRUE \
    -DDOWNLOAD_MINICONDA=FALSE -DBUILD_PYTHON=FALSE \
    -DBUILD_PERL=FALSE -DBUILD_GUI=FALSE \
    -DPMEMD_ONLY=TRUE -DCHECK_UPDATES=FALSE \
    -DCMAKE_POLICY_VERSION_MINIMUM=3.5 \
    2>&1 | tee cmake.log

# Configureが正常終了していることを確認したらmakeとインストールを実行する
make -j8 install
# for pmemd24
test -f ${HOME}/apps/pmemd24/amber.sh && source ${HOME}/apps/pmemd24/amber.sh

こちらはfortran compilerが15でも問題ないようですが、13に合わせておいたほうが良いです。

Ubuntu 24.04の場合

2025年10月4日: 更新しました

aptで依存パッケージを入れます。

sudo apt -y update
sudo apt -y install tcsh make cmake gcc gfortran flex bison patch bc xorg-dev libbz2-dev wget

以下、cmakeインストール時に確認することです。

  • インストール先は-DCMAKE_INSTALL_PREFIX=<path>で設定する。
  • GCCはUbuntu 24.04のデフォルトであるversion 13.3.0を使用し、-DCOMPILER=GNUでGNU Compilerによるコンパイルを指定する。
  • OpenMPIを利用する場合は、この記事などを参考にしてaptまたはソースコードからのインストールを行っておき、PATHが通った状態で-DMPI=TRUEを設定する。
  • CUDAを使ったMDシミュレーションは最大10倍近く高速なので、aptなどであらかじめ入れておき、-DBUILD_CUDA=TRUEとする。
  • -DCHECK_UPDATES=TRUEを指定するとpmemd24のアップデートを確認する……はずがなんかファイルPATHを間違えているために失敗しているようだ。pmemd24のupdate.3まで行わないとBlackwell GPU(RTX5090など)で動作しないため、重要。そこで、手動でアップデートしたほうが確実である。
    • pmemd24_src/cmake/AmberUpdater.cmakeの中でupdate_amberを全部update_pmemdに書き換えれば動作する。
Amber 24 Applied Patches:
-------------------------
update.1 (modifies pmemd.cuda)
Released on July 16, 2025 (written by Patricio Barletta)
Description:
        This fixes gridDim.x to support Blackwell GPUs such as RTX5090

update.2 (modifies pmemd)
Released on August 21, 2025 (written by David Case (from ))
Description:
        Allows compilation with plumed, by adding it to
        3rdPartyTools.cmake

update.3 (modifies pmemd.cuda)
Released on September 4, 2025 (written by David Clark)
Description:
        Adds some syncwarp() calls needed for NTP=1, barostat=1 runs
        on Blackwell GPUs

インストール方法

tar jxvf pmemd24.tar.bz2
cd pmemd24_src
# アップデートを実行しておく
sed -i -e "s#env python#env python3#g" update_pmemd
./update_pmemd --update
# アップデータが動作するように書き換える
sed -i -e "s#update_amber#update_pmemd#g" cmake/AmberUpdater.cmake
# cmake用のbuildディレクトリに入る
cd build
# すでにビルドしたことが会った場合、クリーンアップしておく
./clean_build # yを押してクリーンアップ
# ここからcmake処理
AMBER_PREFIX=$(dirname $(dirname `pwd`))
# もしNCCLを有効化したいときは環境変数NCCL_HOMEを設定し、-DNCCL=TRUEにする。
# export NCCL_HOME="/path/to/apps/nccl/2.7.3"
cmake $AMBER_PREFIX/pmemd24_src \
    -DCMAKE_INSTALL_PREFIX=${HOME}/apps/pmemd24 \
    -DCOMPILER=GNU -DMPI=TRUE -DCUDA=TRUE -DINSTALL_TESTS=TRUE \
    -DDOWNLOAD_MINICONDA=TRUE -DBUILD_PYTHON=TRUE \
    -DBUILD_PERL=TRUE -DBUILD_GUI=FALSE \
    -DPMEMD_ONLY=TRUE -DCHECK_UPDATES=TRUE \
    2>&1 | tee  cmake.log

# Configureが正常終了していることを確認したらmakeとインストールを実行する
make -j8 install
10
4
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
10
4

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?