Mô phỏng động lực học phân tử với Máy chủ Dell EMC PowerEdge XE8545 và NVIDIA A100

Tổng quan

Trong thập kỷ qua, các đơn vị xử lý đồ họa, hay GPU, đã trở nên phổ biến trong điện toán khoa học vì khả năng tuyệt vời của chúng trong việc khai thác mức độ song song cao. NVIDIA có một số ứng dụng khoa học đời sống được tối ưu hóa và chạy trên các GPU đa năng của họ. Thật không may, những GPU này chỉ có thể được lập trình với CUDA, OpenACC và khung OpenCL. Hầu hết các thành viên của cộng đồng khoa học đời sống không quen thuộc với các khuôn khổ này và rất ít nhà sinh vật học hoặc nhà tin sinh học có thể sử dụng hiệu quả kiến ​​trúc GPU. Tuy nhiên, GPU đã xâm nhập vào lĩnh vực mô phỏng động lực học phân tử (MDS) kể từ khi MD được phát triển vào những năm 1950. MDS yêu cầu công việc tính toán nặng nề để mô phỏng các cấu trúc phân tử sinh học hoặc các tương tác của chúng.  

Trong blog này, chúng tôi đã thử nghiệm hai ứng dụng MDS; NAMD và LAMMPS sử dụng máy chủ Dell EMC PowerEdge XE8545 với GPU NVIDIA A100. Do máy chủ XE8545 không hỗ trợ GPU NVIDIA V100 nên chúng tôi có thể ước tính sơ bộ mức tăng hiệu suất với A100 từ các thử nghiệm trước đây của chúng tôi.

Hai ứng dụng này là các gói MD song song mã nguồn mở và miễn phí được thiết kế để phân tích chuyển động vật lý của các nguyên tử và phân tử.

Cấu hình máy chủ thử nghiệm được tóm tắt trong bảng sau.

Bảng 1. Cấu hình nút điện toán đã thử nghiệm

Dell EMC PowerEdge XE8545
CPU 2x 7713 (Milan), 64 lõi, 2,0 GHz – 3,7 GHz Base-Boost, TDP 225 W, 256 MB L3 Cache
ĐẬP DDR4 1024 GB (32 x 32 GB) 3200 tấn/giây
Hệ điều hành RHEL 8.3 (4.18.0-240.el8.x86_64)
mạng hệ thống tập tin Mellanox InfiniBand HDR100
Hệ thống tập tin Giải pháp sẵn sàng của Dell EMC cho Bộ lưu trữ dung lượng cao HPC BeeGFS
Hồ sơ hệ thống BIOS Hiệu suất được tối ưu hóa
bộ xử lý logic Vô hiệu hóa
công nghệ ảo hóa Vô hiệu hóa
Máy gia tốc 4 x A100-40GB SXM4
Cuda/Bộ công cụ 11.2
OpenMPI 4.1.1
NAMD NAMD_Git-2021-04-01_Source
ĐÈN Phiên bản ổn định (29 Thg 10 2020)

Đánh giá hiệu suất

NAMD

Nanoscale Molecular Dynamics (NAMD) là phần mềm nguồn mở dành cho mô phỏng động lực học phân tử được viết theo mô hình lập trình song song CHARMM và được thiết kế để mô phỏng hiệu suất cao của các hệ thống phân tử sinh học lớn.

NAMD được xây dựng với mã nguồn NAMD_Git-2021-04-01_Source trên GCC 11.1 và CUDA 11.2. Đối với các thử nghiệm của chúng tôi, chúng tôi đã sử dụng hai bộ dữ liệu; 1,06 triệu nguyên tử của hệ thống Vệ tinh vi-rút khảm thuốc lá (STMV) và hệ thống 3000k nguyên tử HECBioSim , là một cặp tứ giác 1IVO và 1NQL hEGFR.

Hình 1 cho thấy hiệu suất của GPU 4x A100 với bộ dữ liệu STMV. NAMD sử dụng các tùy chọn ++p để chỉ định số lượng luồng công nhân và theo đề xuất, bằng tổng số lõi trừ đi tổng số GPU. Tuy nhiên, tổng số lõi trong dòng bộ xử lý Milan Eypc 7003, chẳng hạn như Eypc 7713 được sử dụng trong hệ thống thử nghiệm, không tuân theo khuyến nghị chung. Nó có vẻ là khoảng 79 đến 90 lõi. Số lõi tối ưu phụ thuộc vào kích thước dữ liệu. Hiệu suất gần với mô phỏng 9 nano giây (ns) mỗi ngày là hiệu suất đạt được đáng kể từ NVIDIA V100các bài kiểm tra mà chúng tôi đã chạy trước đó. Thật khó để nói hiệu suất đạt được là đóng góp duy nhất của GPU A100 mới vì việc so sánh V100 16 GB trên nền tảng Intel Skylake với A100 40 GB trên nền tảng AMD Milan có thể không hợp lệ.


Hình 1. Thời gian mô phỏng ước tính mỗi ngày với 4x GPU NVIDIA A100

Mục đích của một thử nghiệm bổ sung với 3 triệu tetramer protein nguyên tử là để xác nhận rằng kết quả thử nghiệm STMV không phải là giả tạo do cấu trúc icosahedron tương đối nhỏ của SMTV và mô phỏng một phần quá trình lắp ráp và tháo rời. Hình 2 cho thấy biểu đồ mô phỏng nano giây mỗi ngày cho dữ liệu 3000 nghìn nguyên tử. 2,1 ns/ngày dường như gần với hiệu suất tối đa với 64 lõi.


Hình 2. Thời gian mô phỏng ước tính mỗi ngày với 4x GPU NVIDIA A100

ĐÈN

Trình mô phỏng song song khối lượng lớn nguyên tử/phân tử, hay LAMMPS, là một mã động lực học phân tử cổ điển và có tiềm năng cho các vật liệu ở trạng thái rắn (kim loại và chất bán dẫn), vật chất mềm (phân tử sinh học và polyme) và các hệ thống hạt thô hoặc trung mô. LAMMPS có thể lập mô hình nguyên tử, hoặc có thể được sử dụng như một mô phỏng hạt song song ở quy mô nguyên tử, meso hoặc liên tục. LAMMPS chạy trên các bộ xử lý đơn lẻ hoặc song song bằng cách sử dụng các kỹ thuật truyền thông báo và phân tách không gian của miền mô phỏng. LAMMPS được xây dựng với GCC 11.1, OpenMPI 4.1.1 và CUDA 11.2 từ nguồn. Hệ thống 465k nguyên tử đã được chọn từ HECBioSim .

Như được hiển thị trong Hình 3, LAMMPS có tỷ lệ phù hợp với số lượng A100. Với GPU 4x A100, có thể đạt được tốc độ mô phỏng 8,4 ns/ngày. 


Hình 3. Thời gian mô phỏng ước tính mỗi ngày với số lượng BPU khác nhau

Phần kết luận

Mặc dù không thể so sánh hiệu suất của A100 và V100 từ nghiên cứu này, CPU Milan và A100 cho thấy sức mạnh tổng hợp mạnh mẽ giữa nhiều lõi hơn với GPU tốt hơn và nhanh hơn. Chạy NAMD và LAMMPS trên XE8545 với A100 có thể mang lại hiệu suất tốt hơn hệ thống với V100 .