日本熟妇hd丰满老熟妇,中文字幕一区二区三区在线不卡 ,亚洲成片在线观看,免费女同在线一区二区

使用Amber進行分子動力學模擬

本文以Amber軟件為例介紹如何在E-HPC上進行分子動力學模擬。

背景信息

Amber(Assisted Model Building with Energy Refinement)是一款開源的廣泛使用的分子動力學模擬軟件,主要用于研究分子系統(tǒng)在生物化學領(lǐng)域的動態(tài)性質(zhì)。它由多個程序組成,可以協(xié)調(diào)工作,廣泛應(yīng)用于蛋白質(zhì)、核酸、糖等生物大分子的計算模擬。Amber軟件的核心動力學引擎開發(fā)語言為Fortran90,支持多CPU并行運算與GPU加速,適合于進行大規(guī)模的分子動力學模擬。

準備工作

創(chuàng)建一臺具有NVIDIA GPU卡的ECS實例,例如GPU計算型實例規(guī)格族gn7i等。更多信息,請參見自定義購買實例GPU云服務(wù)器(gn/vgn/sgn系列)

本文示例配置如下:

  • 實例規(guī)格:ecs.gn7i-c8g1.2xlarge

  • 操作系統(tǒng):Alibaba Cloud Linux 3

說明

建議您將實例部署在與集群相同的地域內(nèi),以免增加后續(xù)操作。

步驟一:安裝并配置軟件

  1. 遠程連接已創(chuàng)建的ECS實例。具體操作,請參見通過密碼或密鑰認證登錄Linux實例

  2. 執(zhí)行以下命令,安裝OSS工具。

    sudo yum install -y unzip
    sudo -v ; curl https://gosspublic.alicdn.com/ossutil/install.sh | sudo bash
    ossutil

    執(zhí)行以下命令,修改ossutilconfig配置文件,您可以設(shè)置OSS的Endpoint、AccessKeyID、AccessKeySecret等信息。更多信息,請參見配置ossutil

    vi ~/.ossutilconfig
  3. 執(zhí)行以下命令,安裝所需的開發(fā)工具和庫文件。

    sudo yum install -y gcc gcc-c++ make automake tcsh gcc-gfortran which flex bison patch bc libXt-devel libXext-devel perl perl-ExtUtils-MakeMaker util-linux wget bzip2 bzip2-devel zlib-devel tar
  4. 執(zhí)行以下命令,安裝unrar工具。

    sudo wget https://www.rarlab.com/rar/rarlinux-x64-612.tar.gz  --no-check-certificate
    sudo tar -zxvf rarlinux-x64-612.tar.gz
  5. 執(zhí)行以下命令,安裝CMake。

    cd /usr/local/
    sudo wget https://github.com/Kitware/CMake/releases/download/v3.18.1/cmake-3.18.1-Linux-x86_64.sh
    chmod +x cmake-3.18.1-Linux-x86_64.sh
    ./cmake-3.18.1-Linux-x86_64.sh
    export PATH=$PATH:/usr/local/cmake-3.18.1-Linux-x86_64/bin
    sudo yum install -y gcc gcc-c++ make automake
  6. 升級GCC。

    1. 執(zhí)行以下命令,安裝CentOS Software Collections Release Repository的RH版本。

      sudo yum install centos-release-scl-rh -y
    2. 執(zhí)行以下命令,修改CentOS-SCLo-scl-rh.repo文件。

      sudo vi /etc/yum.repos.d/CentOS-SCLo-scl-rh.repo

      待替換的文件內(nèi)容

      # CentOS-SCLo-rh.repo
      #
      # Please see http://wiki.centos.org/SpecialInterestGroup/SCLo for more
      # information
      
      [centos-sclo-rh]
      name=CentOS-7 - SCLo rh
      baseurl=http://mirrors.cloud.aliyuncs.com/centos/7/sclo/$basearch/rh/
      gpgcheck=0
      enabled=1
      gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-SIG-SCLo
      
      [centos-sclo-rh-testing]
      name=CentOS-7 - SCLo rh Testing
      baseurl=http://mirrors.cloud.aliyuncs.com/centos/7/sclo/$basearch/rh/
      gpgcheck=0
      enabled=0
      gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-SIG-SCLo
      
      [centos-sclo-rh-source]
      name=CentOS-7 - SCLo rh Sources
      baseurl=http://vault.centos.org/centos/7/sclo/Source/rh/
      gpgcheck=1
      enabled=0
      gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-SIG-SCLo
      
      [centos-sclo-rh-debuginfo]
      name=CentOS-7 - SCLo rh Debuginfo
      baseurl=http://debuginfo.centos.org/centos/7/sclo/$basearch/
      gpgcheck=1
      enabled=0
      gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-SIG-SCLo
    3. 執(zhí)行以下命令,安裝Developer Toolset 7。

      sudo yum install devtoolset-7 -y
      說明

      請根據(jù)您的項目需求和依賴環(huán)境,選取合適的Developer Toolset版本進行安裝,以確保開發(fā)環(huán)境的兼容性和最優(yōu)性能。

      • Devtoolset-3旨在配合GCC 4.x.x系列版本,為早期項目提供支持。

      • Devtoolset-4與GCC 5.x.x版本集成,適配中期軟件棧的開發(fā)要求。

      • Devtoolset-6精確匹配GCC 6.x.x系列,引入了更多現(xiàn)代語言特性支持。

      • Devtoolset-7則是專為GCC 7.x.x版本設(shè)計,集成了最先進的編譯技術(shù)和優(yōu)化策略。

    4. 執(zhí)行以下命令,設(shè)置環(huán)境變量。

      source /opt/rh/devtoolset-7/enable
  7. 安裝NVIDIA驅(qū)動和SDK。

    重要

    鑒于NVIDIA圖形處理器(GPU)與CUDA軟件平臺之間的緊密耦合性,為確保最佳性能并減少潛在的兼容性問題,建議將NVIDIA GPU驅(qū)動程序與CUDA工具包作為獨立步驟進行部署。

    1. 執(zhí)行以下命令,安裝NVIDIA驅(qū)動。更多信息,請參見安裝CUDA

      sudo wget https://us.download.nvidia.com/tesla/418.226.00/nvidia-driver-local-repo-rhel7-418.226.00-1.0-1.x86_64.rpm
      rpm -i nvidia-driver-local-repo-rhel7-418.226.00-1.0-1.x86_64.rpm
      sudo yum clean all
      sudo yum install cuda-drivers
      sudo reboot
    2. 執(zhí)行以下命令,安裝NVIDIA的SDK。

      sudo wget https://developer.download.nvidia.com/compute/cuda/10.1/Prod/local_installers/cuda_10.1.243_418.87.00_linux.run
      chmod +x cuda_10.1.243_418.87.00_linux.run
      ./cuda_10.1.243_418.87.00_linux.run --toolkit --samples --silent
  8. 編譯Open MPI。

    1. 執(zhí)行以下命令,下載版本為3.0.0的Open MPI源代碼壓縮包。

      curl -O -L https://download.open-mpi.org/release/open-mpi/v3.0/openmpi-3.0.0.tar.gz
    2. 依次執(zhí)行以下命令,配置OpenMPI以支持CUDA。

      export PATH=/usr/local/cuda/bin/:$PATH
      sudo tar zxvf openmpi-3.0.0.tar.gz
      cd openmpi-3.0.0/
      ./configure --prefix=/opt/openmpi/ --with-cuda=/usr/local/cuda/
    3. 執(zhí)行以下命令進行編譯。

      sudo make -j 8 all
      sudo make -j 8 install
    4. 執(zhí)行以下命令,配置環(huán)境變量。

      export PATH=/usr/local/cuda/bin/:/opt/openmpi/bin:$PATH
  9. 配置Amber軟件。

    1. 進入Amber官網(wǎng),下載AmberTools24.tar.bz2Amber24.tar.bz2文件,并在/opt/目錄下進行解壓縮操作。

    2. 執(zhí)行以下命令,修改Amber編譯參數(shù)。

      cd /opt/amber24_src/build/
      DMPI=TRUE
      openmpiDCUDA=TRUE
    3. 依次執(zhí)行以下命令,運行編譯并完成安裝。

      sudo ./run_cmake
      sudo make install
    4. 依次執(zhí)行以下命令,測試Amber。

      source /opt/amber24/amber.sh
      make test.serial
  10. 打包編譯好的OpenMPI和Amber軟件。

    1. 創(chuàng)建目錄。

      cd
      mkdir amber-openmpi-package
      cd amber-openmpi-package
    2. 使用cp命令,將編譯好的OpenMPI和Amber的可執(zhí)行文件復(fù)制到amber-openmpi-package目錄中。

    3. 執(zhí)行以下命令,創(chuàng)建壓縮包。

      cd
      tar -czf amber-openmpi-package.tar.gz amber-openmpi-package/

步驟二:創(chuàng)建自定義鏡像

關(guān)于如何創(chuàng)建自定義鏡像,請參見使用實例創(chuàng)建自定義鏡像

步驟三:使用自定義鏡像創(chuàng)建E-HPC集群

  1. 創(chuàng)建一個E-HPC集群。具體操作,請參見創(chuàng)建標準版集群

    本文使用的集群配置示例如下:

    配置項

    配置

    系列

    標準版

    部署模式

    公共云集群

    集群類型

    SLURM

    節(jié)點配置

    包含1個管理節(jié)點和2個計算節(jié)點,規(guī)格如下:

    • 管理節(jié)點:采用ecs.r7.xlarge實例規(guī)格,該規(guī)格配置為4 vCPU,32 GiB內(nèi)存。

      說明

      請根據(jù)實際業(yè)務(wù)需求,調(diào)整管理節(jié)點的實例規(guī)格,以提高或降低資源配置。

    • 計算節(jié)點:采用ecs.gn6i-c24g1.12xlarge實例規(guī)格,該規(guī)格配置為48 vCPU、186 GiB內(nèi)存。

    集群鏡像

    鏡像配置選擇本文中已創(chuàng)建的自定義鏡像,包括集群中的管理節(jié)點、登錄節(jié)點和計算節(jié)點。

  2. 創(chuàng)建一個集群用戶。具體操作,請參見用戶管理

    集群用戶用于登錄集群,進行編譯軟件、提交作業(yè)等操作。本文創(chuàng)建的用戶示例如下:

    • 用戶名:testuser

    • 用戶組:普通權(quán)限組

  3. (可選)開啟集群自動伸縮功能。具體操作,請參見自動伸縮節(jié)點

    說明

    您可以通過集群的彈性伸縮能力,無需手動操作,即可實現(xiàn)計算節(jié)點的動態(tài)分配,根據(jù)實時負載自動調(diào)整計算節(jié)點數(shù)量,以提升資源管理效率。

步驟四:創(chuàng)建MOE可視化任務(wù)

  1. 使用已創(chuàng)建的testuser用戶登錄E-HPC Portal。

    具體操作,請參見登錄E-HPC Portal

  2. 單擊右上角連接.png圖標,使用Workbench遠程連接集群登錄節(jié)點。

  3. 將編譯好的OpenMPI和Amber軟件解壓縮到/opt目錄中,確保所有節(jié)點可以共享使用。

    sudo tar -xzf amber-openmpi-package.tar.gz -C /opt
  4. 安裝MOE。

    說明

    MOE是一款商業(yè)軟件,您需要自行購買,然后遵循MOE官方指南進行安裝。

  5. 設(shè)置環(huán)境變量。

    1. 執(zhí)行以下命令,創(chuàng)建可執(zhí)行文件deploy_amber_openmpi.sh

      vim deploy_amber_openmpi.sh
    2. 將以下內(nèi)容寫入并保存退出。

      #!/bin/bash
      
      # 設(shè)置 MOE 環(huán)境變量
      export MOE=/opt/moe_2019.0102
      export LD_LIBRARY_PATH=$MOE/lib:$LD_LIBRARY_PATH
      export PATH=$MOE/bin-lnx64:/usr/local/cuda/bin/:/opt/openmpi/bin:$PATH
      export AMBERHOME=/opt/amber24
    3. 依次執(zhí)行以下命令,順利執(zhí)行腳本文件。

      chmod +x deploy_amber_openmpi.sh
      ./deploy_amber_openmpi.sh
  6. 創(chuàng)建MOE可視化任務(wù)。

    1. 在E-HPC Portal頁面頂部導(dǎo)航欄,選擇任務(wù)管理

    2. 在頁面上方,單擊moe

    3. 創(chuàng)建作業(yè)頁面,填寫以下參數(shù)信息。

      參數(shù)

      說明

      會話名稱

      運行moe訪問集群產(chǎn)生的會話的名稱。

      運行節(jié)點

      運行moe的節(jié)點。

      • 如果選擇隊列,會自動分配隊列中的節(jié)點。

      • 如果選擇節(jié)點,目前僅支持localhost節(jié)點,即為當前節(jié)點。

      CPU核數(shù)

      運行moe所使用的CPU核數(shù)。

      分辨率

      可視化界面的分辨率。

      應(yīng)用啟動命令

      保持默認為moe

    4. 單擊提交作業(yè)

  7. 進入可視化界面。

    1. 在E-HPC Portal頁面頂部導(dǎo)航欄,選擇會話管理

    2. 按照會話名稱找到moe會話,單擊會話名稱。

    3. 進入E-HPC集群可視化界面進行操作。

      image

步驟五:提交作業(yè)

說明

本文以測試算例壓縮包 test.rar 和作業(yè)執(zhí)行腳本 run.sh文件為例來說明如何提交作業(yè)。在實際操作中,請根據(jù)您的具體業(yè)務(wù)需求,替換成相應(yīng)的作業(yè)文件。

  1. 在E-HPC Portal頁面,單擊右上角連接.png圖標,使用Workbench遠程連接集群登錄節(jié)點。

  2. 執(zhí)行以下命令,解壓縮測試用例test.rar文件。

    unrar x test.rar
  3. 執(zhí)行以下命令,修改run.sh文件,限定每個作業(yè)需要2個CPU核心。

    cd test/
    vim run.sh

    修改示例如下所示:

    image

  4. 執(zhí)行以下命令,提交作業(yè)。

    ./run.sh -qsys slurm -submit

步驟六:查看作業(yè)結(jié)果

執(zhí)行以下任一命令,查詢作業(yè)詳情。

  • Slurm Sacct命令

    sacct
  • MOE命令

    ./run.sh -qsys slurm -status