没想到桃子有一天会受困于计算效率……一直以为这是那些学化学、学量子计算的人才需要关心的事情,没想到我这么小小几千原子的体系居然也跑不动了╮(﹀_﹀)╭

三种配置的模拟速度

2000+ 个原子的模拟体系,时间步长 0.5 fs,以下是模拟 100 步的结果。

桃子的小机器

配置

b9b32591a4b545b6133315c537a7a130.png

单核计算

Preformance 一行显示的是最直观的速度,如下图,一天能模拟物理时间 0.127 ns,每秒钟模拟的 2.939 步。

MPI 表格里 Comm 一行显示的是多核并行计算核间通讯时间。

790da3b8e2f30b2263976addb00d267d.png

2核计算

加速比V8/V1 = 1.68,加速效率V8/(pV1) = 83.75%

acb8eec2baf0de4ad2b902fc641ad792.png

4核计算

通讯时间占比 26.43%,这才 4 核,略有点高。

加速比V8/V1 = 1.69,加速效率V8/(pV1) = 42.26%

0342a3f7f3731eecb747487eba30ba64.png

实验室的小机器(hpc5)

配置

dd32c97bc0c89ba106090624768a59db.png

单核计算

c70a2f956e6647b68ec0d6d4adc85be2.png

8核计算

加速比V8/V1 = 2.87,加速效率V8/(pV1) = 35.83%

eee4a20eb5cd7e80baebaec317c22830.png

24核计算

加速比V24/V1 = 4.20,加速效率V24/(pV1) = 17.5%

6b6897539e7a8802b2d39e92b54463ea.png

中国科技云·超算云(BSCC-A系统)

配置

AMD EPYC 7452 32-Core Processor,64核,256G内存,节点间采用 ib 网互连。(从AMD官网上找到这款处理器的基准时钟频率是2.35GHz)

单核计算

907688eb223e414a77fb93df5b6b1892.png

32核计算

加速比V32/V1 = 5.40,加速效率V32/(pV1) = 16.87%

b5da55deafdefc14c80d150eef6e6135.png

64核计算

通讯时间占比 17.85%,64核,还是可以的。

加速比V64/V1 = 7.85,加速效率V64/(pV1) = 12.27%

87d5fb6bfd284bf436390fe947e5e99e.png

网络上关于“Reaxff模拟速度讨论”

来源网址:http://bbs.keinsci.com/thread-19592-1-1.html

  1. 单精度fftw库的18Sep20版本LAMMPS,用Reaxff跑10万原子体系。机器是40核128G内存,RTX2080一块(Reaxff用GPU需要Kokkos包,这里只是纯CPU跑)。时间步长0.25 fs,40 MPI*1 Openmp,平均每小时才跑3700步左右。跑Reaxff的HNS例子,才0.193 ns/day(例子中4核的benchmark是0.04 ns/day,也够慢的)。Reaxff跑每一步都要用Qeq方法计算电荷,比一般分子力场慢不少,但也不至于如此慢。。。
  2. 另外GPU版LAMMPS在pcff力场下跑17000原子,速度是8.1 ns/day。
  3. 两颗8173M+192G内存,10370个原子的反应动力学,0.1fs每步,没有使用Kokkos加速包,只有CPU,共跑200ps。最后是0.072ns/day,333.705hours/ns,8.324 timestep/s

来源网址:https://github.com/Roy-Kid/lammpscn/issues/13

虽然ReaxFF从一定意义上来说属于经验力场,但是计算成本还是相当高,比如我一个4500个原子的model,使用武汉大学超算16核,计算速度大概时0.137ns/day。然后还不支持lammps_GPU加速,只支持KOKKOS和OMP加速。这个KOKKOS我尝试了一下,1066的显卡的计算速度大概等于8核的CPU,但是还是比不过16核的CPU,如果显卡的计算能力更强的话可能计算速度还可以更快。

总结

  1. ReaxFF 并行计算是比较慢
  2. lammps 中 ReaxFF 想要加速只能通过 KOKKOS 和 OMP

解决方案

  1. 没有化学反应参与,没有键的断开与生成,暂时可以改用别的势函数
  2. 学习一下怎么对反应力场的计算进行加速,毕竟总用得到的,比如高速粒子怎么把壁面打穿之类的

未完待续……