AMD gần đây đã công bố và ra mắt dòng bộ vi xử lý EPYC dòng 7003 thế hệ thứ ba (tên mã là Milan). Các bộ xử lý này được xây dựng dựa trên các bộ xử lý sê-ri 7002 (Rome) thế hệ tiếp theo và cải thiện kiến trúc bộ nhớ đệm L3 cùng với băng thông bộ nhớ tăng lên cho các khối lượng công việc như Điện toán hiệu năng cao (HPC).
Phòng thí nghiệm đổi mới trí tuệ nhân tạo và HPC của Dell EMC đã đánh giá các bộ xử lý mới này với các máy chủ 15G PowerEdge mới nhất của Dell EMC và sẽ báo cáo những phát hiện ban đầu của chúng tôi về GROMAC ứng dụng động lực học phân tử (MD) trong blog này.
Do tác động to lớn đến sức khỏe của đại dịch COVID-19 đang diễn ra, các nhà nghiên cứu và nhà khoa học đang hợp tác chặt chẽ với HPC và Phòng thí nghiệm đổi mới trí tuệ nhân tạo để có được các tài nguyên điện toán phù hợp nhằm cải thiện hiệu suất của các mô phỏng động lực học phân tử. Trong số các tài nguyên này, GROMACS là một ứng dụng được sử dụng rộng rãi cho các mô phỏng MD. Nó đã được đánh giá với bộ dữ liệu tiêu chuẩn bằng cách kết hợp bộ xử lý AMD EPYC Milan mới nhất (dựa trên lõi Zen 3) với máy chủ Dell EMC PowerEdge để tận dụng tối đa mô phỏng MD.
Trong blog trước, Mô phỏng động phân tử với GROMACS trên AMD EPYC-ROME , chúng tôi đã xuất bản dữ liệu điểm chuẩn cho nghiên cứu ứng dụng GROMACS trên một nút và đa nút với máy chủ Dell EMC dựa trên AMD EPYC ROME.
Các kết quả được nêu trong blog này đến từ giường thử nghiệm được mô tả trong bảng sau. Chúng tôi đã thực hiện nghiên cứu ứng dụng một nút và nhiều nút trên bộ xử lý Milan, sử dụng ngăn xếp AMD mới nhất được hiển thị trong Bảng 1, với GROMACS 2020.4 để hiểu được sự cải thiện hiệu suất so với bộ xử lý thế hệ cũ (Rome).
Bảng 1: Chi tiết phần cứng và phần mềm thử nghiệm
Người phục vụ | Dell EMC PowerEdge 2 – máy chủ ổ cắm
(với bộ xử lý AMD Milan ) |
Dell EMC PowerEdge 2 – máy chủ ổ cắm
(với bộ xử lý AMD Rome ) |
bộ vi xử lý
Lõi/ổ cắm Tần số (Base-Boost ) Bộ đệm TDP Tốc độ bus bộ xử lý |
7763 (Milan)
64 2,45 GHz – 3,5 GHz 280 W 256 MB 16 GT/giây |
7H12 (Rôma)
64 2,6 GHz – 3,3 GHz 280 W 256 MB 16 GT/giây |
bộ vi xử lý
Lõi/ổ cắm Tính thường xuyên Bộ đệm TDP Tốc độ bus bộ xử lý |
7713 (Milan)
64 2,0 GHz – 3,675 GHz 225 W 256 MB 16 GT/giây |
7702 (Rôma)
64 2,0 GHz – 3,35 GHz 200W 256 MB 16 GT/giây |
bộ vi xử lý
Lõi/ổ cắm Tính thường xuyên Bộ đệm TDP Tốc độ bus bộ xử lý |
7543 (Milan)
32 2,8 GHz – 3,7 GHz 225 W 256 MB 16 GT/giây |
7542 (Rôma)
32 2,9 GHz – 3,4 GHz 225 W 128 MB 16 GT/giây |
Hệ điều hành | Red Hat Enterprise Linux 8.3 (4.18.0-240.el8.x86_64) | Doanh nghiệp mũ đỏ Linux 7.8 |
Kỉ niệm | DDR4 256 G (16 GB x 16) 3200 tấn/giây | |
BIOS/CPLD | 2.0.2/1.1.12 | |
kết nối | NVIDIA Mellanox HDR | NVIDIA Mellanox HDR100 |
Bảng 2: Bộ dữ liệu điểm chuẩn được sử dụng để đánh giá hiệu suất GROMACS
Bộ dữ liệu | chi tiết D |
Phân tử nước | 1536K và 3072K |
HecBioSim | 1400K và 3000K |
Prace – Lignocellulose | 3M |
Thông tin sau đây mô tả đánh giá hiệu suất cho ngăn xếp bộ xử lý được liệt kê trong Bảng 1.
Bộ xử lý Rome so với bộ xử lý Milan (GROMACS)
Hình 1: So sánh hiệu suất GROMACS với bộ xử lý AMD Rome
Để so sánh điểm chuẩn hiệu suất, chúng tôi đã chọn bộ xử lý Rome gần nhất với bộ xử lý Milan của chúng về các tính năng phần cứng như kích thước bộ đệm, giá trị TDP và Tần suất cơ sở/Turbo của bộ xử lý, đồng thời đánh dấu giá trị tối đa đạt được cho Ns/ngày theo từng bộ xử lý bộ dữ liệu được đề cập trong Bảng 2.
Hình 1 cho thấy bộ xử lý 32C Milan có những cải tiến về hiệu suất cao hơn (19% đối với water 1536, 21% đối với water 3072 và 10 đến xấp xỉ 12% với bộ dữ liệu cellulose sim và biệt ngữ HECBIO) so với bộ xử lý 32C Rome. Kết quả này là do tốc độ bộ xử lý cao hơn và bộ đệm L3 được cải thiện, trong đó mỗi lõi có thể truy cập nhiều dữ liệu hơn.
Tiếp theo, với bộ xử lý cao cấp hơn, chúng tôi chỉ thấy mức tăng 10 phần trăm đối với bộ dữ liệu nước, vì chúng tốn nhiều bộ nhớ hơn. Một số tỷ lệ phần trăm được thêm vào do cải thiện tần suất cho các bộ dữ liệu còn lại. Nhìn chung, kết quả của bộ xử lý Milan đã chứng minh sự cải thiện hiệu suất đáng kể cho GROMACS so với bộ xử lý Rome.
So sánh bộ xử lý Milan (bộ xử lý 32C so với bộ xử lý 64C)
Hình 2: Hiệu suất GROMACS với bộ xử lý Milan
Hình 2 cho thấy hiệu suất so với hiệu suất thu được trên bộ xử lý 7543. Ví dụ: hiệu suất của water 1536 được cải thiện từ bộ xử lý 32C thành bộ xử lý 64 lõi (64C) từ 41 phần trăm (bộ xử lý 7713) lên 57 phần trăm (bộ xử lý 7763). Cải thiện hiệu suất là do số lượng lõi ngày càng tăng và cải thiện hiệu suất tần số lõi CPU cao hơn. Chúng tôi quan sát thấy rằng GROMACS nhạy cảm với tần số, nhưng không ở mức độ lớn. Có thể thấy mức tăng lớn hơn khi chạy GROMACS trên nhiều lần chạy tập hợp hoặc chạy tập dữ liệu với số lượng nguyên tử cao hơn.
Chúng tôi khuyên bạn nên so sánh tỷ lệ giá trên hiệu suất trước khi chọn bộ xử lý dựa trên bộ dữ liệu có tần số lõi CPU cao hơn, vì bộ xử lý có số lõi tần số thấp hơn cao hơn có thể mang lại hiệu suất tổng thể tốt hơn.
Nghiên cứu nhiều nút với bộ xử lý 7713 64C
Hình 3: Nghiên cứu nhiều nút với SKU 7713 64c
Đối với các thử nghiệm đa nút, giường thử nghiệm được định cấu hình với kết nối NVIDIA Mellanox HDR chạy ở tốc độ 200 Gbps và mỗi máy chủ bao gồm một bộ xử lý AMD EPYC 7713. Chúng tôi đã đạt được khả năng mở rộng hiệu suất tuyến tính dự kiến cho GROMACS lên đến bốn nút và trên mỗi bộ dữ liệu. Tất cả các lõi trong mỗi máy chủ đã được sử dụng trong khi chạy điểm chuẩn. Mức tăng hiệu suất gần như tuyến tính trên tất cả các loại tập dữ liệu khi số lượng lõi tăng lên.
Sự kết luận
Đối với các bộ dữ liệu khác nhau mà chúng tôi đã đánh giá, GROMACS thể hiện khả năng mở rộng mạnh mẽ và tính toán chuyên sâu. Chúng tôi khuyên dùng bộ xử lý có số lượng lõi cao cho các tập dữ liệu nhỏ hơn (water 1536, hec 1400); bộ dữ liệu lớn hơn (water 3072, ligno, HEC 3000) sẽ được hưởng lợi từ bộ nhớ trên mỗi lõi. Định cấu hình các tùy chọn BIOS tốt nhất là rất quan trọng để hệ thống đạt được hiệu suất tốt nhất.