Question about pressure & memory or GPU per number of atoms and others
Closed this issue · 1 comments
Hi,
I have a question about SevenNet and LAMMPS-SevenNet. Forgive me I write this in 'issues' tab, but this github doesn't have 'discussion' tab, so...
- LAMMPS-SevenNet pressure calculation.
From future plan, I see
Implementation of pressure output in parallel MD simulations.
I also see from example test MDs, that:
WARNING: PairE3GNNParallel does not support pressure calculation. Pressure on log is WRONG. Use serial version if you needed
Is this means the current parallel LAMMPS-SevenNet MD cannot operate NPT ensemble simulations properly, even though users include NPT AIMD results to training set and train for E, F, and S during SevenNet training?
Or, is this means that users can still run parallel NPT ensemble MD properly with LAMMPS-SevenNet, because the issue is just about printing out pressure values?
If I perform SevenNet parallel MD simulations for equation of state of a material (density check for various P and V condition) using NPT ensemble, would that result reasonable? Or the accuracy would be poor by lack of pressure output?
-
Approximate number of GPU units and GPU-memory per atom from LAMMPS-SevenNet MD.
Approximately, how many number of GPUs and how much GPU-memory is required for, let's say, 10k number of atoms?
I wonder, is there any benchmark test results for "large" system, like 10k or 20k number of atoms, using LAMMPS-SevenNet MD, to see how much computational resources should be required for such systems. -
Can I run LAMMPS-SevenNet parallel MD from Parallel CPU environment?
Is this possible? -
Can I build and use Kokkos and OpenMP module with LAMMPS-SevenNet for parallel MD?
Thanks
HI! I just activated discussion tabs.
- Both NPT simulations and pressure outputs are not valid. I think we should mention that NPT simulation is not feasible with LAMMPS + SevenNet + the parallel version. It’s not a matter of accuracy; it simply makes no sense to run NPT simulations with multi-GPU MD, for now.
Evaluating pressure with the conventional approach used in MD simulations is not straightforward for GNN models. Most GNN potential packages overcome this problem by using the autograd feature of ML frameworks. However, this trick doesn’t work for parallel MD setups, so we need another approach.
You may use single GPU runs to determine valid pressure (P) and volume (V) conditions for your system and then scale the system via NVT simulation with multi-GPU setups.
-
Unfortunately, there are no such results at this moment. Actually, it is more complicated, as I found that both memory usage and computational time heavily depend on the 'number of edges' in the system, not only the number of atoms.
-
Yes, but it is not recommended. Firstly, the CPU is too slow. Secondly, the current implementation has a limit on subdomain cell size, which prevents the fine-grained parallelism needed for CPU cores. I have a long justification for that limit, but I'll skip it here as it is too technical.
-
I think it is possible, but LAMMPS + SevenNet will not utilize Kokkos or OpenMP for extra speed-ups. We may speed up SevenNet with Kokkos, such as by avoiding CPU-GPU communications for atom positions or forces, but it would be marginal as the model already takes up 99% of the computational time. If we were able to build a significantly faster model, combining Kokkos would be listed as one of our future goals.