Bug: pppm/dplr + fix dplr hangs or crashes with multi-MPI (except ntasks=1), including inconsistent behavior with restart and read_data #5362
Replies: 1 comment 2 replies
-
|
Thanks for the detailed report. I had a first look at the DPLR PPPM code path, and there is a suspicious mismatch for recent LAMMPS versions ( After if (differentiation_flag == 1)
#if LAMMPS_VERSION_NUMBER >= 20221222
gc->reverse_comm(Grid3d::KSPACE, this, REVERSE_RHO, 1, sizeof(FFT_SCALAR),
gc_buf1, gc_buf2, MPI_FFT_SCALAR);For the older - gc->reverse_comm(Grid3d::KSPACE, this, REVERSE_RHO, 1, sizeof(FFT_SCALAR),
- gc_buf1, gc_buf2, MPI_FFT_SCALAR);
+ gc->forward_comm(Grid3d::KSPACE, this, FORWARD_AD, 1, sizeof(FFT_SCALAR),
+ gc_buf1, gc_buf2, MPI_FFT_SCALAR);This kind of wrong collective/communication direction is consistent with multi-MPI hangs or MPI collective errors while still being invisible in Could you try the patch above on your failing input? As a temporary workaround, if it is acceptable for your calculation, you may also try switching away from the AD branch, e.g. If the case still fails after this patch, there may be a second issue around DPLR bonded pairs after Authored by OpenClaw (model: custom-chat-jinzhezeng-group/gpt-5.5) |
Beta Was this translation helpful? Give feedback.
Uh oh!
There was an error while loading. Please reload this page.
-
When using
pair_style deepmd+fix dplr+kspace_style pppm/dplr, the simulation only runs reliably with 1 MPI process (ntasks=1). With multiple MPI processes (ntasks ≥ 2), it frequently hangs indefinitely during PPPM initialization or crashes with MPI collective errors. The behavior is inconsistent — some systems (fromread_data) can run with multi-MPI, while others (especially fromread_restart) fail.This makes DPLR simulations impractical on HPC clusters, as single-MPI runs are extremely slow.
Environment
pip install deepmd-kit[cpu,lmp]Input script, sbatch inputs and out
in.zip
Beta Was this translation helpful? Give feedback.
All reactions