Commit Graph

364 Commits

Author SHA1 Message Date
5d801e985f More cleanup 2021-09-17 23:24:23 -05:00
78045d8f76 Cleaned up debugging stuffs and unused variables 2021-09-17 23:13:51 -05:00
f5713a52b3 Added another kernel to accumulate forces, energies and virial on the device (similar to the tersoff kernels) as multiple kernels all added to those quantities; also only copy answers back to the host in the last kernel in a time step; cleaned up debugging messages 2021-09-17 16:39:57 -05:00
2e6df83b9b Fixed bugs in the multipole real-space part on the GPU; separately multipole real and polar real work correctly (along with udirect2b and umutual2b), but
together they are conflicting due to the use of ans to copy forces back from device to host. The other 2 kernels (induce part) do not touch forces and energies.
2021-09-17 15:24:36 -05:00
d926705950 Short neighbor list for multipole real-space should be built with off2_mpole 2021-09-17 01:32:00 -05:00
003bebd31e Working on the multipole real-space term, not ready yet 2021-09-17 01:19:33 -05:00
c0b967054e Fixed bugs with zero local atoms (similar to what has been done to PPPM interp) 2021-09-16 17:27:44 -05:00
98c1a0178c Refactored the API so that different off2 values are used for different kernels 2021-09-16 17:14:36 -05:00
a21095fded More cleaning up 2021-09-13 13:47:15 -05:00
bc665999d5 Fixed bugs with the umutual2b kernel, now the field and fieldp seems correct 2021-09-13 01:11:03 -05:00
edd76733a1 Working on umutual2b, tdipdip are correct, but incorrect results for field and fieldp 2021-09-12 00:51:48 -05:00
94d6f7219c Attempted to reduce the memory footprint of the per-atom arrays 2021-09-11 11:22:17 -05:00
c765861851 Cleaned up and re-arranged the functions to reflect the order of calling in a time step 2021-09-11 01:00:58 -05:00
7f5a82dc54 Switched to the short neighbor list implementation in the pre-10Feb21 version (the recent version enforces tpa = 1 for short nbor) 2021-09-11 00:34:43 -05:00
4ebe5833d3 Working on short nbor list for the amoeba kernels (based on what has been done with tersoff and ellipsod, nbor dev_packed needs to be allocated properly) 2021-09-10 16:51:16 -05:00
a22923aee2 Added the API for the umutual kernel, needs work for storing the tdiptdip array 2021-09-09 17:22:09 -05:00
b654f293ee Working on the umutual2b kernel, the tdipdip values are computed on the fly for now, maybe a seprate neigh list as in the CPU version will be more efficient 2021-09-09 16:52:27 -05:00
efe0bf593f Adding the umutual2b kernel, need to create another array for tdipdip on the GPU 2021-09-09 15:19:43 -05:00
6f6fd0999c Both udirect2b and polar_real are working correctly on the GPU 2021-09-09 00:57:21 -05:00
8c5a116d30 Made dfield0c work to compute uind and uinp correctly; need to make sure they are correct for polar_real() 2021-09-08 16:43:33 -05:00
1c5d235f12 Working on the field and fieldp values from GPU back to the host for dfield0c 2021-09-07 16:15:08 -05:00
4e346c2de6 Refactored neighbor list builds and per-atom reallocation parts 2021-09-07 13:05:57 -05:00
7d69a870a4 Reverted the binsize function call from the GPU package in Atom, instead added atom_modify sort with a binsize to ensure matching virial values, enabled the udirect2b kernel, need more work to override dfield0c, and induce() to bypass reverse_comm() for field and fieldp (line amoeba_induce.cpp:111-112) 2021-09-03 13:43:22 -05:00
785a794d39 Added and renamed API to make room for additional kernels (udirect2b only computes the field and fieldp, not accumulating forces, energies, nor virials) 2021-09-01 14:37:11 -05:00
07b60827c4 Working on the udirect2b kernel for the induce real space term, need to add the API for the GPU library 2021-09-01 12:30:41 -05:00
91317b2879 Added changes to Atom and Device classes for allocation of extra fields and SBBITS15 and NEIGHMASK15 2021-08-26 09:33:20 -05:00
3825fee8e9 Added work on amoeba/gpu, some minor changes to PairAmoeba to allow function overriding in PairAmoebaGPU, added the package AMOEBA to cmake/CMakeLists.txt 2021-08-25 22:57:37 -05:00
92b5b159e5 replace tabs and remove trailing whitespace in lib folder with updated script 2021-08-22 20:45:24 -04:00
8ea9179a00 Correct device pointer datatype in HIP UCL_Const 2021-06-02 15:46:57 -04:00
62423b0c75 Disable new GPU neighbor for HIP 2021-06-02 15:45:06 -04:00
76a472d8b8 Merge pull request #2640 from ndtrung81/eam-gpu
Fixing bugs on eam*/gpu for pair hybrid with neigh yes, where the gpu…
2021-05-27 12:11:13 -04:00
63ecb77303 fix some more URLs 2021-05-24 15:38:27 -04:00
7dee0b0633 Merge branch 'gpu-updates' into eam-gpu 2021-05-24 00:24:04 -04:00
0e1fa44b9d fix compilation error on latest intel OpenCL compiler due to missing tagint definition 2021-05-22 13:16:31 -04:00
fe93603d15 Merge branch 'eam-gpu' of https://github.com/ndtrung81/lammps into eam-gpu 2021-05-19 10:59:47 -05:00
8af6e58a7f Fixed a bug with the eam kernel for screening out pairs that are excluded by the pair style (when eam is a sub-style in pair hybrid) 2021-05-19 10:56:51 -05:00
5dbf9f754e Merge branch 'master' into eam-gpu 2021-05-18 14:19:39 -04:00
5591b0f33d Merge branch 'master' into smooth-gpu 2021-05-11 23:59:14 -04:00
442a829b1e changed author 2021-05-12 00:40:38 +03:00
5865ced9c7 minor change 2021-05-12 00:25:51 +03:00
d3186b74f7 updated 2021-05-12 00:14:27 +03:00
5b8763c471 Merge branch 'lammps:master' into smooth-gpu 2021-05-11 22:22:33 +03:00
a687868c69 finalize available GPU hardware introspection functions 2021-05-10 16:34:27 -04:00
fbdcfb2f72 preliminary interface to detect whether a viable GPU is present 2021-05-10 09:16:51 -04:00
299ad3b37d work around bogus device overhead info in OpenCL 2021-05-08 23:43:15 -04:00
b3083f1982 Fixed issue with accessing type2frho array in eam energy kernels 2021-05-07 13:43:58 -04:00
efd6f7b2d0 Fixed issue with accessing type2frho array in eam energy kernels 2021-05-04 23:12:55 -05:00
7c3a7cb2e4 Merge branch 'master' into eam-gpu 2021-05-04 23:05:29 -05:00
b4a70880d9 Merge pull request #2745 from rbberger/gpu_updates
Updates to the GPU package
2021-04-30 19:32:44 -04:00
6029445ab5 Fix tagint datatype with LAMMPS_BIGBIG in OpenCL
The previous version was trying to use 16 byte integers.
2021-04-30 12:01:56 -04:00