首页 > 其他分享 >分子动力学NAMD部署文档

分子动力学NAMD部署文档

时间:2023-03-15 19:57:23浏览次数:53  
标签:NAMD x86 tar 动力学 文档 linux 64 charm

高性能计算实战——NAMD

概述

NAMD(NAnoscale Molecular Dynamics)是用于在大规模并行计算机上快速模拟大分子体系的并行分子动力学代码。目前 NAMD 还支持在 GPU 加速器上的运算。NAMD 具有非常强的大规模并行计算能力,已经实现了在上千个处理器上的并行计算,对包含超过三十万个原子的大分子系统进行模拟。

软件环境

  • Fortran90、gcc编译器
  • 单精度FFTW
  • NAMD
  • 其他:CUDA

FFTW

FFTW ( the Faster Fourier Transform in the West) 是一个快速计算离散傅里叶变换的标准C语言程序集,其由MIT的M.Frigo 和S. Johnson 开发。可计算一维或多维实和复数据以及任意规模的离散傅里叶变换。FFTW 受到越来越多的科学研究和工程计算工作者的普遍青睐,并为量子物理、光谱分析、音视频流信号处理、石油勘探、地震预报、天气预报、概率论、编码理论、医学断层诊断等领域提供切实可行的大规模 FFT 计算。

CUDA

官方网站下载对应操作系统的安装包。可参阅其中安装手册下载,安装完成后配置环境变量例如:

export PATH=$DIR/cuda/bin:$PATH
export LD_LIBRARY_PATH=$DIR/cuda/lib64:$LD_LIBRARY_PATH
export C_INCLUDE_PATH=$DIR/cuda/include:$C_INCLUDE_PATH

安装步骤

NAMD

在 NAMD 官网下载合适版本,以源码为例,先解压缩

tar xzvf NAMD_2.13_Source.tar.gz

其中包含charm安装包,继续解压缩

cd NAMD_2.13_Source
tar xvf charm-6.8.2.tar

依赖库安装

主要为tclFFTW,首先获取安装包

wget http://www.ks.uiuc.edu/Research/namd/libraries/fftw-linux-x86_64.tar.gz
wget http://www.ks.uiuc.edu/Research/namd/libraries/tcl8.5.9-linux-x86_64.tar.gz
wget http://www.ks.uiuc.edu/Research/namd/libraries/tcl8.5.9-linux-x86_64-threaded.tar.gz

可能实际下载时平台的wget指令无法使用,此时需要先手动下载文件至本地再传输至高性能计算服务器上。

Windows环境下可以使用WinSCP软件,WinSCP是一个Windows环境下的开源图形化SFTP客户端。同时支持SCP协议。它的主要功能就是在本地与远程计算机间安全的复制文件。

打开软件后输入主机地址,用户名和密码即可连接

详细安装和使用方法可以参考官方网站

进行安装

tar xzf fftw-linux-x86_64.tar.gz
mv linux-x86_64 fftw

tar xzf tcl*-linux-x86_64.tar.gz
tar xzf tcl*-linux-x86_64-threaded.tar.gz
mv tcl*-linux-x86_64 tcl
mv tcl*-linux-x86_64-threaded tcl-threaded

执行编译

编译charm++并行库

根据需求选择不同模式

tar xvf charm-6.8.2.tar
cd charm-6.8.2/
./build charm++ verbs-linux-x86_64 gcc smp --with-production #分布式计算模式
./build charm++ multicore-linux64 gcc --with-production #单节点 multicore 模式
编译NAMD主程序

编译单节点模式:

./config Linux-x86_64-g++ --charm-arch multicore-linux64-gcc --with-cuda --cuda-prefix
/usr/local/cuda
cd Linux-x86_64-g++/
make

编译多节点并行模式:

./config Linux-x86_64-g++ --charm-arch verbs-linux-x86_64-smp-gcc --with-cuda --cuda
prefix /usr/local/cuda
cd Linux-x86_64-g++/
make
  • 编译完成后会生成 charmrun,namd2 等文件。

至此NAMD已经安装完毕

VMD

VMD 是一个分子可视化程序,该程序采用3D图形以及内置脚本来对大型生物分子系统进行显示、制成动画以及分析等操作。

测试环境时安装的版本为vmd-1.9.2,在官方网站下载安装包后,上传至高性能计算服务器。

首先解压缩并进入目录

tar xzvf vmd-1.9.2.bin.tar.gz
cd vmd-1.9.2

首先修改configure文件中安装路径,即install_bin_dirinstall_library_dir两个变量

vim configure

执行configure操作,对于不同体系结构的高性能计算机,详细的配置选项可在[官网][https://www.ks.uiuc.edu/Research/vmd/doxygen/configure.html]查看

./configure

之后进入src目录下安装

cd src
make install

安装成功后,运行vmd可以看见相关信息

image-20220914154144272

实验步骤

主要包括生成结构文件、溶质化、球状水体泛素的分子动力学模拟、立方体水泛素的分子动力学模拟等一系列步骤。

基本准备

首先需要在官网下载运行所需要的一个数据包。

分子动力学模拟需要准备各种数据文件包括

  • 分子的PDB文件。存储分子所有原子的坐标。
  • 分子的PSF文件。存储分子的结构信息。
  • 力场参数文件。
  • 模拟的配置文件。

创建PSF文件

vim ubq.pgn

输入如下内容

package require psfgen
topology top_all27_prot_lipid.inp
pdbalias residue HIS HSE
pdbalias atom ILE CD1 CD
segment U {pdb ubqp.pdb}
coordpdb ubqp.pdb U
guesscoord
writepdb ubq.pdb
writepsf ubq.psf

配置文件

创建配置文件,修改部分参数如图中列举的就有

  • psf和pdb文件的位置
  • 环境温度temperature
  • 定义变量outputname并赋值为ubq_ws_eq
  • 设置起始时刻

这里只截取了部分,实际还有许多参数,详细配置可以查看官方手册。

image-20220914154225405

模拟计算

./namd2 ubq_ws_eq.conf > ubq_ws_eq.log

实验结果

编写slurm脚本

#!/bin/bash
#SBATCH -J namd
#SBATCH -p cpu-low
#SBATCH -N 4
#SBATCH -n 8
#SBATCH -t 15:00
#SBATCH -o out
#SBATCH -e err

./namd2 +p8 +setcpuaffinity namd-tutorial-files/1-2-sphere/ubq_ws_eq.conf > test_4_8_log

执行结果后,可以查看输出文件,得到每一步的模拟信息。

image-20220914154306912

可以在运行时指定分配的节点数、核数,在运行时会输出相关配置信息,在计算结束后查看对应结果。

每次选择不同的节点数核数,计算后查看cpu时间,每组环境下进行多次测试,并观察其变化趋势

image-20220914154408700

可以发现在使用多核并行的情况下有较好的加速比。

导入数据计算

假设新的数据已经有以下文件,并需要根据特定需求计算

  • 蛋白质分子的PDB文件。存储蛋白质分子所有原子的坐标。
  • 蛋白质分子的PSF文件。存储蛋白质分子的结构信息。
  • 力场参数文件。

运行前,需要编写配置文件,主要目的在于

  1. 指定输入数据的路径
  2. 设置参数
  3. 修改计算相关配置

将输入数据都放在上一级目录的common文件夹中,即../common,则可以这样编写

标签:NAMD,x86,tar,动力学,文档,linux,64,charm
From: https://www.cnblogs.com/ddl789/p/17208375.html

相关文章

  • mysql安装详细文档(windows)
    安装MySQLMySQL是目前最为流行的开放源码的数据库,是完全网络化的跨平台的关系型数据库系统,它是由瑞典MySQLAB公司开发,目前属于Oracle公司。任何人都能从Internet下载MySQL......
  • Linux下文档的压缩与打包
    Linux下最常见的压缩文件通常都是.tar.gz格式的,除此之外还有.tar、.gz、.bz2、.zip下面介绍Linux下最常见的后缀名所对应的压缩工具:.gz:表示由gzip压缩工具压缩的文件。......
  • 【倒计时3天】“CSIG企业行”走进合合信息,大咖解密智能文档处理背后的底层技术及AI未
    3月18日,由中国图象图形学会(CSIG)主办,合合信息、CSIG文档图像分析与识别专业委员会联合承办的“CSIG企业行”系列活动将正式举办,通过搭建学术界与企业交流合作平台,为企业创......
  • ckeditor粘贴word文档图片的实例
    自动导入Word图片,或者粘贴Word内容时自动上传所有的图片,并且最终保留Word样式,这应该是Web编辑器里面最基本的一个需求功能了。一般情况下我们将Word内容粘贴到Web编辑器(富......
  • 170_DAX & Power Query M 文档整理
    170_DAX&PowerQueryM文档整理一、背景最近和一些刚刚接触DAX、PowerQuery的朋友(就是买我课程同学[doge],这是硬广告,要问课程在哪里对吧?见文末。)聊到,希望能有一......
  • 全网最详细中英文ChatGPT接口文档(一)开始使用ChatGPT——导言
    目录Introduction导言Overview概述Keyconcepts关键概念Promptsandcompletions提示和完成Tokens标记/符号Models模型Nextsteps下一步步骤其它资料下载Introduc......
  • ShowDoc在线API文档
    官方文档: https://www.showdoc.com.cn/helpdocker部署说明:#原版官方镜像安装命令(中国大陆用户不建议直接使用原版镜像,可以用后面的加速镜像)dockerpullstar7th......
  • 参考文档
    Winform如何实现自动更新程序https://www.jb51.net/article/207882.htmhttps://blog.csdn.net/qq_38693757/article/details/125252813https://www.csframework.com/cs......
  • showdoc文档管理平台部署
    【工具相关】showdoc文档管理平台部署 一、前言1、需求来由#内部资料归档混乱,内部归档地址不一,不利于资料查找及工作交接更新不及时,本地文档更新完,未同步上传......
  • vue 处理后端返回的文档流
    xiazai(){this.$_api.kanbanApi.Get({responseType:'blob',url:'KanbanItemData/exportExcel'//`${this.selectComponents.config.da......