Rescale 플랫폼의 자유 에너지 계산


생명과학 산업에서 신약 개발을 위한 가장 중요한 시뮬레이션 방법 중 하나는 자유 에너지 계산 계열의 특별한 방법인 자유 에너지 섭동(FEP)입니다. 단순화된 용어로, 자유 에너지 계산의 목적은 람다로 표시되는 여러 중간 비물리적 화학적 상태 과정을 통해 상태 A를 상태 B로 연금술적으로 변환하여 두 개의 서로 다른 화학적 상태 A와 B 사이의 자유 에너지 차이를 계산하는 것입니다. 느린 성장, 열역학적 적분(TI) 및 자유 에너지 섭동(FEP)을 포함하여 자유 에너지를 계산하는 데 사용할 수 있는 여러 가지 방법이 있습니다. FEP가 자유 에너지를 계산하는 데 널리 사용되는 방법이 된 이유는 FEP가 고성능 환경에서 실행하기 쉽게 만드는 고유한 확장 속성 때문입니다. 다음을 다루는 훌륭한 온라인 리소스가 있습니다. 자유 에너지 계산 이론, 따라서 여기에서는 람다 창이 서로 독립적이라는 사실을 통해 여러 시뮬레이션을 병렬로 실행할 수 있다는 점 외에는 더 자세히 설명하지 않겠습니다. 실용적인 측면에서 이는 Rescale 플랫폼을 사용하여 컴퓨팅 클러스터를 생성하고 자유 에너지 계산 작업을 각각 주어진 람다 값을 사용하는 M개의 독립 시뮬레이션으로 나눌 수 있음을 의미합니다. 샘플링 효율성을 높이기 위해 다음과 같은 방법을 사용하여 이러한 독립적인 시뮬레이션을 결합할 수도 있습니다. 해밀턴 복제 교환 우리가 사용하기로 선택한 소프트웨어 패키지가 이 방법을 지원하는지 여부.
Rescale에서 이러한 시뮬레이션을 실행하는 것이 얼마나 쉬운지 보여주기 위해 Alchemistry.org의 예를 들어보겠습니다. GROMACS를 사용하여 계산된 에탄올의 절대 용매화 자유에너지. 이 예에서는 모델이 이미 구축되고 평형화되었으므로 모델 구축과 관련하여 더 이상 수행할 작업이 필요하지 않습니다. 토폴로지 파일 Ethanol.top에는 분자의 정의가 포함되어 있고 좌표 파일 Ethanol.gro에는 시스템에 포함된 원자의 평형화된 3차원 좌표가 포함되어 있습니다. 이 두 파일을 더 이상 변경하지 않고 그대로 사용하겠습니다. 또한 실행 입력 구성 파일 Ethanol.mdp에는 FEP를 사용하여 자유 에너지를 계산하는 데 필요한 설정 섹션이 포함되어 있습니다.

; 자유에너지 매개변수 free-energy = yes ; 어떤 중간 상태를 시뮬레이션하고 있나요? 초기화-람다-상태 = X ; 중간 상태의 람다 값은 무엇입니까? 쿨-람다 = 0.0 0.2 0.5 1.0 1.0 1.0 1.0 1.0 1.0 vdw-람다 = 0.0 0.0 0.0 0.0 0.2 0.4 0.6 0.8 1.0 ; 이를 통해 이웃 주뿐만 아니라 모든 주 간 해밀턴의 차이를 인쇄할 수 있습니다. calc-lambda-neighbors = -1 ; 우리는 에탄올 분자만으로 자유에너지를 하고 있습니다. 쌍-몰형 = 에탄올

이 파일에 제공된 설정에 따라 다음을 사용하여 XNUMX개의 중간 상태가 정의되었음을 알 수 있습니다. '쿨 람다''vdw-람다' 키워드. 주어진 lamdba 중간 상태는 (쿨람다i, vdw_lambdasi) 쌍; 따라서 각 배열의 길이는 동일해야 합니다. 그렇지 않으면 오류가 발생합니다. 위에서 정의한 각 중간 상태에 대해 하나씩 XNUMX개의 개별 시뮬레이션을 실행합니다. 주어진 시뮬레이션에 대한 특정 람다 값은 다음과 같이 지정됩니다. '초기-람다-상태' 키워드는 0에서 8 사이의 정수입니다. 우리가 해야 할 유일한 작업은 각 람다 값에 대한 입력 구성 파일을 생성하는 간단한 스크립트를 작성하는 것입니다. 이는 새 작업을 설정할 때 Rescale 내에서 직접 수행할 수 있으며 이에 대해서는 아래에서 자세히 설명합니다.
구성 파일에 제공된 다른 키워드에 대한 몇 가지 설명이 도움이 될 수 있습니다. 첫째, '자유 에너지 = 그렇습니다' 키워드는 시뮬레이션 엔진에 우리가 자유 에너지 계산을 수행하고 있음을 알려주고, '커플-몰타입 = 에탄올' 키워드는 에탄올 분자가 변환될 유일한 개체임을 지정합니다. 이 경우, 토폴로지 파일에서 에탄올 분자가 정의되는 방식으로 인해 전체 분자는 완전히 상호 작용하는 분자에서 더 이상 시스템의 나머지 부분과 상호 작용하지 않는 고스트 입자로 변환됩니다. 둘째, '계산-람다-이웃 = -1' 키워드는 GROMACS에게 기준 중간 상태와 다른 모든 중간 상태 간의 에너지 차이를 계산하도록 지시합니다. 이 키워드는 다음과 같은 방식으로 설정되어야 합니다. 다중 주 Bennett Acceptance Ratio 분석 방법.
이러한 배경을 바탕으로 Rescale에서 이 예제 계산을 설정하고 실행해 보겠습니다. 먼저 세 개의 입력 파일을 업로드합니다. 단순화를 위해 최상위 디렉토리에 있는 세 개의 파일을 모두 함께 타르로 처리했습니다.
2015 09-21-9.28.57 AM에서 스크린 샷
다음으로 소프트웨어 설정을 클릭하고 Gromacs를 선택하세요. 버전 5.0(MPICH, Single Precision, AVX2)을 선택하고 아래 스크린샷과 같이 명령 스크립트를 작성하여 계산을 실행합니다. 이 스크립트는 0에서 8까지의 람다 값을 반복하여 각 람다 값에 대한 새로운 실행 입력 구성 파일을 생성합니다. 그만큼 SED 명령은 Ethanol.mdp 템플릿 파일의 'X'를 해당 람다 값으로 바꾸고 파일 이름에 포함된 람다 값(예: Ethanol.4.mdp)으로 새 입력 파일을 저장합니다. 그런 다음 다음을 호출하여 일반적인 GROMACS 작업 흐름을 계속합니다. 그롬프_mpi 입력 구조 파일 Ethanol.4.tpr을 생성합니다. 마지막으로 Hamiltonian Replica Exchange 시뮬레이션을 실행하라는 명령을 내립니다.

mpirun -np 9 mdrun_mpi -multi 9 -ntomp 2 -replex 1000 -nex 100000 -deffnm 에탄올. -dhdl 에탄올.dhdl.

2015 09-21-9.27.39 AM에서 스크린 샷
여기서는 서로 다른 람다 값에서 각 시뮬레이션에 대해 하나씩 9개의 MPI 프로세스를 실행하도록 지정합니다. 음피룬 전에, -NP 9 옵션. 이후 옵션 mdrun_mpi XNUMX개의 궤적에서 Hamiltonian Replica Exchange를 실행하도록 GROMACS 시뮬레이션 엔진을 구성합니다(-멀티 9) 매 1000 시간 단계마다 교환 빈도(-리플렉스 1000). -ntomp 2 옵션은 GROMACS에게 각 mpi 프로세스에 2개의 openmp 스레드를 연결하도록 지시하므로 이 계산을 위해 총 18개의 스레드를 실행하게 됩니다. 이는 노드당 18개의 코어를 제공하는 Onyx 코어 유형에 잘 매핑됩니다. 이 설정을 통해 컴퓨팅 하드웨어를 최적으로 사용하는 각 물리적 코어에 하나의 openmp 스레드를 매핑하게 됩니다. 에 대한 메모 -ntomp ~에 대한 옵션 mdrun_mpi, 원하는 openmp 스레드 수를 GROMACS에 명시적으로 알려주지 않으면 프로세서를 조사하여 사용 가능한 스레드 수를 알아냅니다. 프로세서에서 하이퍼스레딩이 활성화되면 물리적 코어당 XNUMX개의 가상 스레드가 있고 GROMACS는 이후 물리적 코어당 XNUMX개의 openmp 스레드를 할당합니다. GROMACS는 이미 물리적 코어당 하나의 스레드로 실행되도록 고도로 최적화되어 있으므로 성능이 크게 저하됩니다. 따라서 -ntomp 2, 우리는 이 작업에 대해 총 18개의 openmp 스레드(9개의 MPI 프로세스로 나누어짐)를 실행하고 싶다고 GROMACS에 명시적으로 알립니다.
그러면 하드웨어 설정을 클릭하고 Onyx 코어 유형을 선택한 다음 18개 코어를 선택하는 다음 단계로 이동합니다. 이제 시뮬레이션을 실행할 준비가 되었습니다. 코어 수를 선택했으면 제출을 클릭하여 작업을 실행합니다. 이 게시물에서는 실제로 자유 에너지를 계산하기 위해 분석을 수행하는 방법에 대해 자세히 설명하지 않고 향후 게시물을 위해 이 주제를 남겨 두겠습니다. 최종 분석을 수행하는 데 필요한 파일이 .dhdl.xvg 출력 파일에 포함되어 있다고 말하면 충분합니다.
2015 09-21-9.29.41 AM에서 스크린 샷
이 에탄올 용매화 자유 에너지 예제의 작성자는 6ns의 시뮬레이션 시간 동안 실행할 것을 권장했는데, 이는 하루 3ns의 최종 성능에 21시간 42분이 걸렸습니다. 이것으로 Rescale 플랫폼에서 GROMACS를 사용하여 자유 에너지 섭동 계산을 설정하고 실행하는 예제가 완성되었습니다. 우리는 제약 산업의 연구자들이 Rescale에서 자유 에너지 계산을 실행하도록 권장합니다. 저는 귀하가 Rescale에 익숙해지는 데 도움을 드리고 있으며, 위대한 과학에 기여하고 약물 개발 및 그 이상 분야에서 자유 에너지 계산의 사용과 영향을 발전시키는 데 도움이 되기를 기대합니다.
이 일을 직접 운영하고 싶다면, 이 링크를 클릭 (아직 계정이 없다면 계정을 만들어야 합니다.) 
계정을 만들려면 다음으로 이동하세요. www.rescale.com/signup.
궁금한 사항이나 더 자세한 정보를 원하시면 연락주세요 info@rescale.com.

비슷한 게시물