Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

GPU package updates Dec 2023 #4009

Merged
merged 30 commits into from Dec 13, 2023
Merged

Conversation

ndtrung81
Copy link
Contributor

@ndtrung81 ndtrung81 commented Dec 11, 2023

Summary

This PR contains updates and maintenance to the GPU package: adding the GPU version of several pair styles: lj/cut/coul/long/soft, lj/cut/coulcut/soft, coul/long/slater, edpd, mdpd, sph/lj, sph/taitwater, sph/heatconduction; updating the corresponding doc pages, and cleaning up unused variables.

Related Issue(s)

coul/long/slater is added per Feature Request and thus closes #3918

Author(s)

Trung Nguyen (U Chicago)

Licensing

By submitting this pull request, I agree, that my contribution will be included in LAMMPS and redistributed under either the GNU General Public License version 2 (GPL v2) or the GNU Lesser General Public License version 2.1 (LGPL v2.1).

Backward Compatibility

Should maintain backward compatibility

Implementation Notes

  1. The pair styles from DPD-MESO and SPH packages demonstrate how to use the extra arrays to store extra_field per-atom data in the GPU package, and how to accumulate/tally per-atom values within the kernels. This is an option to refactor existing Base* classes and to support other AtomVec* classes with extra per-atom data.

  2. The pair styles mdpd_rhosum and sph_heatconduction do not calculate atom forces, energy and virial, but rather tallying per-atom values, which are reminiscent of computing density rho in pair eam, and so can be lumped into the actual pair styles.

Post Submission Checklist

  • The feature or features in this pull request is complete
  • Licensing information is complete
  • Corresponding author information is complete
  • The source code follows the LAMMPS formatting guidelines
  • Suitable new documentation files and/or updates to the existing docs are included
  • The added/updated documentation is integrated and tested with the documentation build system
  • The feature has been verified to work with the conventional build system
  • The feature has been verified to work with the CMake based build system
  • Suitable tests have been added to the unittest tree.
  • A package specific README file has been included or updated
  • One or more example input decks are included

Further Information, Files, and Links

@akohlmey akohlmey added the gpu_unit_tests Enable to trigger GPU unit tests label Dec 11, 2023
@akohlmey akohlmey added gpu_unit_tests Enable to trigger GPU unit tests and removed gpu_unit_tests Enable to trigger GPU unit tests labels Dec 11, 2023
@akohlmey akohlmey added gpu_unit_tests Enable to trigger GPU unit tests and removed gpu_unit_tests Enable to trigger GPU unit tests labels Dec 11, 2023
@akohlmey akohlmey added gpu_unit_tests Enable to trigger GPU unit tests and removed gpu_unit_tests Enable to trigger GPU unit tests labels Dec 12, 2023
@akohlmey akohlmey added test_runs Enable to trigger run tests test_for_regression Enable to trigger regression tests gpu_unit_tests Enable to trigger GPU unit tests and removed test_runs Enable to trigger run tests test_for_regression Enable to trigger regression tests gpu_unit_tests Enable to trigger GPU unit tests labels Dec 12, 2023
@ndtrung81 ndtrung81 assigned akohlmey and unassigned ndtrung81 Dec 12, 2023
Copy link
Contributor

@stanmoore1 stanmoore1 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Need to update Commands list, https://github.com/lammps/lammps/blob/develop/doc/src/Commands_pair.rst. Otherwise looks fine to me.

@ndtrung81
Copy link
Contributor Author

@stanmoore1 thanks, I updated Command_pair.rst and fixed some last-minute issues.

@akohlmey akohlmey added gpu_unit_tests Enable to trigger GPU unit tests and removed gpu_unit_tests Enable to trigger GPU unit tests labels Dec 13, 2023
@akohlmey akohlmey merged commit 0c4a1cb into lammps:develop Dec 13, 2023
5 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
Development

Successfully merging this pull request may close these issues.

Coul/slater GPU support
3 participants