Amber24 安装指南:Ubuntu 22.04 + CUDA 12.4 环境

Amber

Amber 是一个用于分子动力学(molecular dynamics, MD)模拟的软件包,主要用于生物大分子(例如蛋白质、核酸、脂质等)的模拟。研究人员可借助 Amber 探究分子的结构与运动,例如蛋白质折叠或配体结合等生物过程。这个软件已有超过 20 年历史,最近我重做了一次 Amber 的安装过程。

这次安装中有一些新的选项(比如 GPU 支持或用 Miniconda 的设置)是当年不存在的。总体上来说安装还算顺利,但中间遇到了一些小坑,有必要记录下来。

这里不涉及有偿编译器、MPI、InfiniBand 等复杂配置,重点只是启用 GPU(CUDA)选项。

安装 NVIDIA 驱动

可以参照以下步骤安装 NVIDIA 驱动。

在文件 /etc/modprobe.d/blacklist-nouveau.conf 中写入:

bash 复制代码
blacklist nouveau  
options nouveau modeset=0

然后运行:

bash 复制代码
sudo update-initramfs -u
sudo reboot

重启后,安装 NVIDIA 驱动:

bash 复制代码
ubuntu-drivers devices
# 会显示推荐的驱动版本,比如 "recommended" 字样
# 我在我的环境中看到的是 550,所以就安装 550 驱动
sudo apt install -y nvidia-driver-550
sudo reboot

安装 CUDA

使用 nvidia-smi 可确认当前可用的 CUDA 版本,以此为依据安装对应版本的 CUDA。

NVIDIA 的官网提供 CUDA 各版本的归档列表。你需要选择与你的操作系统版本、GPU 架构匹配的版本,并使用网络方式 (network install) 获取安装命令。

例如:

bash 复制代码
wget https://developer.download.nvidia.com/compute/cuda/repos/ubuntu2204/x86_64/cuda-keyring_1.1-1_all.deb  
sudo dpkg -i cuda-keyring_1.1-1_all.deb  
sudo apt-get update  
sudo apt-get -y install cuda-toolkit-12-4

安装完成后,需要设置环境变量(注意顺序,否则可能引用到旧版本):

/etc/profile.d/cuda.sh 中写入:

bash 复制代码
export PATH=/usr/local/cuda-12.4/bin:${PATH}
export LD_LIBRARY_PATH=/usr/local/cuda-12.4/lib64:${LD_LIBRARY_PATH}

设置好后,登出再登录使其生效。可通过以下命令确认环境变量是否正确:

bash 复制代码
echo $PATH  
echo $LD_LIBRARY_PATH

安装相关库

在安装过程中,有些包在视频教程里没提到,有些包则不再需要。可手动安装:

bash 复制代码
sudo apt update  
sudo apt-get install cmake  
sudo apt-get install wget build-essential checkinstall  
sudo apt install libncursesw5-dev libssl-dev \
     libsqlite3-dev tk-dev libgdbm-dev libc6-dev libffi-dev zlib1g-dev  
sudo apt-get install gfortran  
sudo apt-get install flex  
sudo apt-get install bison

原来某些 Python2 相关包在视频里提及,但因为我们现在主要用 Python3,所以可以省略 python-distutils-extra

此外,可以加入 deadsnakes PPA 安装较新版的 Python3:

bash 复制代码
sudo add-apt-repository ppa:deadsnakes/ppa  
sudo apt update  
sudo apt install python3  
sudo apt-get install python-setuptools

视频教程里有 "sudo apt-get install cuda-toolkit" 的命令,但它可能安装较旧版本(如 CUDA 11.5),与我们目标版本不符,所以在本教程中省略这一命令。


安装 Miniconda

因为 Amber 的安装选项中有自动下载 Miniconda 的选项,但在这里我们要禁用那部分,所以需事先手动安装 Miniconda。

(具体安装步骤略,可参考其他文章)

例如:

bash 复制代码
wget https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-x86_64.sh  
bash Miniconda3-latest-Linux-x86_64.sh

按提示一路确认即可,默认会安装在用户目录下的 miniconda3。安装完成后,登出/重登使环境变量生效。之后你在 base 环境中继续操作,在这个环境里执行 Python、安装依赖库等:

bash 复制代码
conda install numpy scipy matplotlib

下载 Amber 源码

从官方渠道下载:

  • amber24

  • ambertools24

下载后解压:

bash 复制代码
tar xvf AmberTools24.tar.bz2  
tar xvf Amber24.tar.bz2  
cd amber24_src/build

编辑 cmake 配置

进入 amber24_src/build 后,修改 run_cmake 脚本,有两处选项需要改动:

  • -DCUDA=TRUE

  • -DDOWNLOAD_MINICONDA=FALSE

最终的 cmake 命令大致如下:

bash 复制代码
cmake $AMBER_PREFIX/amber24_src \
  -DCMAKE_INSTALL_PREFIX=$AMBER_PREFIX/amber24 \
  -DCOMPILER=GNU \
  -DMPI=FALSE -DCUDA=TRUE -DINSTALL_TESTS=TRUE \
  -DDOWNLOAD_MINICONDA=FALSE \
  2>&1 | tee cmake.log

构建与安装 Amber

配置好后按常规步骤执行:

bash 复制代码
./run_cmake  
make  
make install  
source ~/amber24/amber.sh

参考资料

https://ambermd.org/AmberTools.php

相关推荐
NiKo_W5 小时前
Linux TcpSocket编程
linux·服务器·网络·udp·socket·多线程·tcp
Eternal-Student5 小时前
【ubuntu】在Linux系统上安装Microsoft Edge浏览器
linux·ubuntu·microsoft
谅望者5 小时前
Linux文件查看命令完全指南:cat、less、head、tail、grep使用详解
linux·excel·less·shell·文件操作·命令行·系统运维
casdfxx5 小时前
blender实现手柄控制VR视角
linux·vr·blender
盼哥PyAI实验室6 小时前
纯前端打造个人成长网站:零后端、零部署、零服务器的实践分享
运维·服务器·前端·javascript·echarts·个人开发
信看6 小时前
树莓派 ADS1263 各种库程序
linux·运维·服务器
爱奥尼欧6 小时前
【Linux笔记】网络部分——传输层协议TCP(2)
linux·网络·笔记·tcp/ip
嵌入式小李.man6 小时前
linux中多路复用IO:select、poll和epoll
linux·c++
---学无止境---6 小时前
Linux中完成根文件系统的最终准备和切换prepare_namespace函数的实现
linux
大白的编程日记.6 小时前
【Linux学习笔记】线程安全问题之单例模式和死锁
linux·笔记·学习