lammps/lib/gpu
Axel Kohlmeyer f1aaad2b13
remove trailing whitespace
2020-04-27 09:54:05 -04:00
..
cudpp_mini Fix typo 2020-03-14 13:57:48 +09:00
geryon Merge branch 'master' into gpu_hip 2020-03-30 17:15:55 -04:00
.gitignore Update lib/gpu/.gitignore 2020-03-30 17:36:22 -04:00
Install.py add pointer to README and Manual to help. 2019-01-31 18:46:43 -05:00
Makefile.fermi Corrected the wrong use of the stubs path in -rpath 2019-12-17 14:05:39 -06:00
Makefile.hip Remove trailing whitespace 2020-04-10 15:10:41 -04:00
Makefile.lammps.mac_ocl git-svn-id: svn://svn.icms.temple.edu/lammps-ro/trunk@10668 f3b2605a-c512-4ea7-a41b-209d697bcdaa 2013-08-23 14:46:18 +00:00
Makefile.lammps.mingw-cross git-svn-id: svn://svn.icms.temple.edu/lammps-ro/trunk@15248 f3b2605a-c512-4ea7-a41b-209d697bcdaa 2016-07-01 23:27:26 +00:00
Makefile.lammps.opencl git-svn-id: svn://svn.icms.temple.edu/lammps-ro/trunk@10668 f3b2605a-c512-4ea7-a41b-209d697bcdaa 2013-08-23 14:46:18 +00:00
Makefile.lammps.standard Updated README and added -L$(CUDA_HOME)/lib64/stubs to the Makefile's 2019-12-11 16:29:42 -06:00
Makefile.linux Updated README and added -L$(CUDA_HOME)/lib64/stubs to the Makefile's 2019-12-11 16:29:42 -06:00
Makefile.linux.double Updated README and added -L$(CUDA_HOME)/lib64/stubs to the Makefile's 2019-12-11 16:29:42 -06:00
Makefile.linux.mixed Updated README and added -L$(CUDA_HOME)/lib64/stubs to the Makefile's 2019-12-11 16:29:42 -06:00
Makefile.linux.single Updated README and added -L$(CUDA_HOME)/lib64/stubs to the Makefile's 2019-12-11 16:29:42 -06:00
Makefile.linux_multi Updated README and added -L$(CUDA_HOME)/lib64/stubs to the Makefile's 2019-12-11 16:29:42 -06:00
Makefile.linux_opencl tune OpenCL for generic architecture by default 2018-05-08 00:50:23 -04:00
Makefile.mac Updated README and added -L$(CUDA_HOME)/lib64/stubs to the Makefile's 2019-12-11 16:29:42 -06:00
Makefile.mac_opencl git-svn-id: svn://svn.icms.temple.edu/lammps-ro/trunk@10667 f3b2605a-c512-4ea7-a41b-209d697bcdaa 2013-08-23 14:41:20 +00:00
Makefile.mpi rework Install.py for gpu library. make it consistent with other lib folders and support python3 2017-08-08 16:57:27 -04:00
Makefile.serial Updated README and added -L$(CUDA_HOME)/lib64/stubs to the Makefile's 2019-12-11 16:29:42 -06:00
Makefile.serial_opencl git-svn-id: svn://svn.icms.temple.edu/lammps-ro/trunk@9978 f3b2605a-c512-4ea7-a41b-209d697bcdaa 2013-05-30 20:04:31 +00:00
Makefile.shannon Updated README and added -L$(CUDA_HOME)/lib64/stubs to the Makefile's 2019-12-11 16:29:42 -06:00
Makefile.xk7 Updated README and added -L$(CUDA_HOME)/lib64/stubs to the Makefile's 2019-12-11 16:29:42 -06:00
Nvidia.makefile Implement GPU pair style lj/cut/tip4p/long/gpu 2019-11-10 02:38:58 +03:00
Nvidia.makefile_multi update fatbin makefile for libgpu.a to latest additions 2018-07-10 09:07:54 -04:00
Opencl.makefile Implement GPU pair style lj/cut/tip4p/long/gpu 2019-11-10 02:38:58 +03:00
README Merge branch 'master' into gpu_hip 2020-03-30 17:15:55 -04:00
lal_answer.cpp Merge 'gpu_hip_port' into master 2020-01-28 20:35:08 +03:00
lal_answer.h Merge 'gpu_hip_port' into master 2020-01-28 20:35:08 +03:00
lal_atom.cpp Merge 'gpu_hip_port' into master 2020-01-28 20:35:08 +03:00
lal_atom.cu do not mix c++ style and c-style comments 2020-04-26 22:50:24 -04:00
lal_atom.h Merge 'gpu_hip_port' into master 2020-01-28 20:35:08 +03:00
lal_aux_fun1.h Merge 'gpu_hip_port' into master 2020-01-28 20:35:08 +03:00
lal_balance.h convert gpu lib to use c++-style include files 2018-05-08 00:25:10 -04:00
lal_base_atomic.cpp Fixed bugs with kernel (re)compiling when the global device got cleared and then reinitialized 2019-10-31 01:15:53 -05:00
lal_base_atomic.h Merge branch 'master' into gpu_hip 2020-03-30 17:15:55 -04:00
lal_base_charge.cpp Fixed bugs with kernel (re)compiling when the global device got cleared and then reinitialized 2019-10-31 01:15:53 -05:00
lal_base_charge.h Merge branch 'master' into gpu_hip 2020-03-30 17:15:55 -04:00
lal_base_dipole.cpp Fixed bugs with kernel (re)compiling when the global device got cleared and then reinitialized 2019-10-31 01:15:53 -05:00
lal_base_dipole.h Merge branch 'master' into gpu_hip 2020-03-30 17:15:55 -04:00
lal_base_dpd.cpp Fixed bugs with kernel (re)compiling when the global device got cleared and then reinitialized 2019-10-31 01:15:53 -05:00
lal_base_dpd.h Merge branch 'master' into gpu_hip 2020-03-30 17:15:55 -04:00
lal_base_ellipsoid.cpp Fixed bugs with kernel (re)compiling when the global device got cleared and then reinitialized 2019-10-31 01:15:53 -05:00
lal_base_ellipsoid.h Merge branch 'master' into gpu_hip 2020-03-30 17:15:55 -04:00
lal_base_three.cpp Fixed bugs with kernel (re)compiling when the global device got cleared and then reinitialized 2019-10-31 01:15:53 -05:00
lal_base_three.h Merge branch 'master' into gpu_hip 2020-03-30 17:15:55 -04:00
lal_beck.cpp make clang++ happy when trying to compile the GPU library 2019-07-12 15:42:16 -04:00
lal_beck.cu do not mix c++ style and c-style comments 2020-04-26 22:50:24 -04:00
lal_beck.h Fix typo 2020-03-14 13:57:48 +09:00
lal_beck_ext.cpp convert gpu lib to use c++-style include files 2018-05-08 00:25:10 -04:00
lal_born.cpp make clang++ happy when trying to compile the GPU library 2019-07-12 15:42:16 -04:00
lal_born.cu do not mix c++ style and c-style comments 2020-04-26 22:50:24 -04:00
lal_born.h Fix typo 2020-03-14 13:57:48 +09:00
lal_born_coul_long.cpp make clang++ happy when trying to compile the GPU library 2019-07-12 15:42:16 -04:00
lal_born_coul_long.cu do not mix c++ style and c-style comments 2020-04-26 22:50:24 -04:00
lal_born_coul_long.h Fix typo 2020-03-14 13:57:48 +09:00
lal_born_coul_long_cs.cpp make clang++ happy when trying to compile the GPU library 2019-07-12 15:42:16 -04:00
lal_born_coul_long_cs.cu remove trailing whitespace 2020-04-27 09:54:05 -04:00
lal_born_coul_long_cs.h Fix typo 2020-03-14 13:57:48 +09:00
lal_born_coul_long_cs_ext.cpp Updates to the core-shell gpu pair styles 2018-06-20 10:43:13 -05:00
lal_born_coul_long_ext.cpp convert gpu lib to use c++-style include files 2018-05-08 00:25:10 -04:00
lal_born_coul_wolf.cpp make clang++ happy when trying to compile the GPU library 2019-07-12 15:42:16 -04:00
lal_born_coul_wolf.cu do not mix c++ style and c-style comments 2020-04-26 22:50:24 -04:00
lal_born_coul_wolf.h Fix typo 2020-03-14 13:57:48 +09:00
lal_born_coul_wolf_cs.cpp make clang++ happy when trying to compile the GPU library 2019-07-12 15:42:16 -04:00
lal_born_coul_wolf_cs.cu do not mix c++ style and c-style comments 2020-04-26 22:50:24 -04:00
lal_born_coul_wolf_cs.h Fix typo 2020-03-14 13:57:48 +09:00
lal_born_coul_wolf_cs_ext.cpp Added missing source files for born/coul/wolf/cs in the gpu library 2018-06-20 15:08:24 -05:00
lal_born_coul_wolf_ext.cpp convert gpu lib to use c++-style include files 2018-05-08 00:25:10 -04:00
lal_born_ext.cpp convert gpu lib to use c++-style include files 2018-05-08 00:25:10 -04:00
lal_buck.cpp make clang++ happy when trying to compile the GPU library 2019-07-12 15:42:16 -04:00
lal_buck.cu do not mix c++ style and c-style comments 2020-04-26 22:50:24 -04:00
lal_buck.h Fix typo 2020-03-14 13:57:48 +09:00
lal_buck_coul.cpp make clang++ happy when trying to compile the GPU library 2019-07-12 15:42:16 -04:00
lal_buck_coul.cu do not mix c++ style and c-style comments 2020-04-26 22:50:24 -04:00
lal_buck_coul.h Fix typo 2020-03-14 13:57:48 +09:00
lal_buck_coul_ext.cpp convert gpu lib to use c++-style include files 2018-05-08 00:25:10 -04:00
lal_buck_coul_long.cpp make clang++ happy when trying to compile the GPU library 2019-07-12 15:42:16 -04:00
lal_buck_coul_long.cu do not mix c++ style and c-style comments 2020-04-26 22:50:24 -04:00
lal_buck_coul_long.h Fix typo 2020-03-14 13:57:48 +09:00
lal_buck_coul_long_ext.cpp convert gpu lib to use c++-style include files 2018-05-08 00:25:10 -04:00
lal_buck_ext.cpp convert gpu lib to use c++-style include files 2018-05-08 00:25:10 -04:00
lal_charmm_long.cpp make clang++ happy when trying to compile the GPU library 2019-07-12 15:42:16 -04:00
lal_charmm_long.cu do not mix c++ style and c-style comments 2020-04-26 22:50:24 -04:00
lal_charmm_long.h Fix typo 2020-03-14 13:57:48 +09:00
lal_charmm_long_ext.cpp convert gpu lib to use c++-style include files 2018-05-08 00:25:10 -04:00
lal_colloid.cpp make clang++ happy when trying to compile the GPU library 2019-07-12 15:42:16 -04:00
lal_colloid.cu do not mix c++ style and c-style comments 2020-04-26 22:50:24 -04:00
lal_colloid.h Fix typo 2020-03-14 13:57:48 +09:00
lal_colloid_ext.cpp convert gpu lib to use c++-style include files 2018-05-08 00:25:10 -04:00
lal_coul.cpp make clang++ happy when trying to compile the GPU library 2019-07-12 15:42:16 -04:00
lal_coul.cu do not mix c++ style and c-style comments 2020-04-26 22:50:24 -04:00
lal_coul.h Fix typo 2020-03-14 13:57:48 +09:00
lal_coul_debye.cpp make clang++ happy when trying to compile the GPU library 2019-07-12 15:42:16 -04:00
lal_coul_debye.cu do not mix c++ style and c-style comments 2020-04-26 22:50:24 -04:00
lal_coul_debye.h Fix typo 2020-03-14 13:57:48 +09:00
lal_coul_debye_ext.cpp convert gpu lib to use c++-style include files 2018-05-08 00:25:10 -04:00
lal_coul_dsf.cpp make clang++ happy when trying to compile the GPU library 2019-07-12 15:42:16 -04:00
lal_coul_dsf.cu do not mix c++ style and c-style comments 2020-04-26 22:50:24 -04:00
lal_coul_dsf.h Fix typo 2020-03-14 13:57:48 +09:00
lal_coul_dsf_ext.cpp convert gpu lib to use c++-style include files 2018-05-08 00:25:10 -04:00
lal_coul_ext.cpp convert gpu lib to use c++-style include files 2018-05-08 00:25:10 -04:00
lal_coul_long.cpp make clang++ happy when trying to compile the GPU library 2019-07-12 15:42:16 -04:00
lal_coul_long.cu do not mix c++ style and c-style comments 2020-04-26 22:50:24 -04:00
lal_coul_long.h Fix typo 2020-03-14 13:57:48 +09:00
lal_coul_long_cs.cpp make clang++ happy when trying to compile the GPU library 2019-07-12 15:42:16 -04:00
lal_coul_long_cs.cu do not mix c++ style and c-style comments 2020-04-26 22:50:24 -04:00
lal_coul_long_cs.h Fix typo 2020-03-14 13:57:48 +09:00
lal_coul_long_cs_ext.cpp Updates to the core-shell gpu pair styles 2018-06-20 10:43:13 -05:00
lal_coul_long_ext.cpp convert gpu lib to use c++-style include files 2018-05-08 00:25:10 -04:00
lal_device.cpp Merge 'gpu_hip_port' into master 2020-01-28 20:35:08 +03:00
lal_device.cu Merge 'gpu_hip_port' into master 2020-01-28 20:35:08 +03:00
lal_device.h Fix typo 2020-03-14 13:57:48 +09:00
lal_dipole_lj.cpp make clang++ happy when trying to compile the GPU library 2019-07-12 15:42:16 -04:00
lal_dipole_lj.cu do not mix c++ style and c-style comments 2020-04-26 22:50:24 -04:00
lal_dipole_lj.h Fix typo 2020-03-14 13:57:48 +09:00
lal_dipole_lj_ext.cpp convert gpu lib to use c++-style include files 2018-05-08 00:25:10 -04:00
lal_dipole_lj_sf.cpp make clang++ happy when trying to compile the GPU library 2019-07-12 15:42:16 -04:00
lal_dipole_lj_sf.cu do not mix c++ style and c-style comments 2020-04-26 22:50:24 -04:00
lal_dipole_lj_sf.h Fix typo 2020-03-14 13:57:48 +09:00
lal_dipole_lj_sf_ext.cpp convert gpu lib to use c++-style include files 2018-05-08 00:25:10 -04:00
lal_dipole_long_lj.cpp make clang++ happy when trying to compile the GPU library 2019-07-12 15:42:16 -04:00
lal_dipole_long_lj.cu do not mix c++ style and c-style comments 2020-04-26 22:50:24 -04:00
lal_dipole_long_lj.h Fix typo 2020-03-14 13:57:48 +09:00
lal_dipole_long_lj_ext.cpp Switched to standard C++ header files for consistency with other source files 2018-06-01 23:13:49 -05:00
lal_dpd.cpp make clang++ happy when trying to compile the GPU library 2019-07-12 15:42:16 -04:00
lal_dpd.cu do not mix c++ style and c-style comments 2020-04-26 22:50:24 -04:00
lal_dpd.h Fix typo 2020-03-14 13:57:48 +09:00
lal_dpd_ext.cpp convert gpu lib to use c++-style include files 2018-05-08 00:25:10 -04:00
lal_eam.cpp make clang++ happy when trying to compile the GPU library 2019-07-12 15:42:16 -04:00
lal_eam.cu do not mix c++ style and c-style comments 2020-04-26 22:50:24 -04:00
lal_eam.h Fix typo 2020-03-14 13:57:48 +09:00
lal_eam_alloy_ext.cpp convert gpu lib to use c++-style include files 2018-05-08 00:25:10 -04:00
lal_eam_ext.cpp convert gpu lib to use c++-style include files 2018-05-08 00:25:10 -04:00
lal_eam_fs_ext.cpp convert gpu lib to use c++-style include files 2018-05-08 00:25:10 -04:00
lal_ellipsoid_extra.h Merge 'gpu_hip_port' into master 2020-01-28 20:35:08 +03:00
lal_ellipsoid_nbor.cu do not mix c++ style and c-style comments 2020-04-26 22:50:24 -04:00
lal_gauss.cpp make clang++ happy when trying to compile the GPU library 2019-07-12 15:42:16 -04:00
lal_gauss.cu do not mix c++ style and c-style comments 2020-04-26 22:50:24 -04:00
lal_gauss.h Fix typo 2020-03-14 13:57:48 +09:00
lal_gauss_ext.cpp convert gpu lib to use c++-style include files 2018-05-08 00:25:10 -04:00
lal_gayberne.cpp make clang++ happy when trying to compile the GPU library 2019-07-12 15:42:16 -04:00
lal_gayberne.cu do not mix c++ style and c-style comments 2020-04-26 22:50:24 -04:00
lal_gayberne.h Fix typo 2020-03-14 13:57:48 +09:00
lal_gayberne_ext.cpp convert gpu lib to use c++-style include files 2018-05-08 00:25:10 -04:00
lal_gayberne_lj.cu do not mix c++ style and c-style comments 2020-04-26 22:50:24 -04:00
lal_lj.cpp make clang++ happy when trying to compile the GPU library 2019-07-12 15:42:16 -04:00
lal_lj.cu do not mix c++ style and c-style comments 2020-04-26 22:50:24 -04:00
lal_lj.h Fix typo 2020-03-14 13:57:48 +09:00
lal_lj96.cpp make clang++ happy when trying to compile the GPU library 2019-07-12 15:42:16 -04:00
lal_lj96.cu do not mix c++ style and c-style comments 2020-04-26 22:50:24 -04:00
lal_lj96.h Fix typo 2020-03-14 13:57:48 +09:00
lal_lj96_ext.cpp convert gpu lib to use c++-style include files 2018-05-08 00:25:10 -04:00
lal_lj_class2_long.cpp make clang++ happy when trying to compile the GPU library 2019-07-12 15:42:16 -04:00
lal_lj_class2_long.cu do not mix c++ style and c-style comments 2020-04-26 22:50:24 -04:00
lal_lj_class2_long.h Fix typo 2020-03-14 13:57:48 +09:00
lal_lj_class2_long_ext.cpp convert gpu lib to use c++-style include files 2018-05-08 00:25:10 -04:00
lal_lj_coul.cpp make clang++ happy when trying to compile the GPU library 2019-07-12 15:42:16 -04:00
lal_lj_coul.cu do not mix c++ style and c-style comments 2020-04-26 22:50:24 -04:00
lal_lj_coul.h Fix typo 2020-03-14 13:57:48 +09:00
lal_lj_coul_debye.cpp make clang++ happy when trying to compile the GPU library 2019-07-12 15:42:16 -04:00
lal_lj_coul_debye.cu do not mix c++ style and c-style comments 2020-04-26 22:50:24 -04:00
lal_lj_coul_debye.h Fix typo 2020-03-14 13:57:48 +09:00
lal_lj_coul_debye_ext.cpp convert gpu lib to use c++-style include files 2018-05-08 00:25:10 -04:00
lal_lj_coul_ext.cpp convert gpu lib to use c++-style include files 2018-05-08 00:25:10 -04:00
lal_lj_coul_long.cpp make clang++ happy when trying to compile the GPU library 2019-07-12 15:42:16 -04:00
lal_lj_coul_long.cu do not mix c++ style and c-style comments 2020-04-26 22:50:24 -04:00
lal_lj_coul_long.h Fix typo 2020-03-14 13:57:48 +09:00
lal_lj_coul_long_ext.cpp convert gpu lib to use c++-style include files 2018-05-08 00:25:10 -04:00
lal_lj_coul_msm.cpp make clang++ happy when trying to compile the GPU library 2019-07-12 15:42:16 -04:00
lal_lj_coul_msm.cu do not mix c++ style and c-style comments 2020-04-26 22:50:24 -04:00
lal_lj_coul_msm.h Fix typo 2020-03-14 13:57:48 +09:00
lal_lj_coul_msm_ext.cpp convert gpu lib to use c++-style include files 2018-05-08 00:25:10 -04:00
lal_lj_cubic.cpp make clang++ happy when trying to compile the GPU library 2019-07-12 15:42:16 -04:00
lal_lj_cubic.cu do not mix c++ style and c-style comments 2020-04-26 22:50:24 -04:00
lal_lj_cubic.h Fix typo 2020-03-14 13:57:48 +09:00
lal_lj_cubic_ext.cpp convert gpu lib to use c++-style include files 2018-05-08 00:25:10 -04:00
lal_lj_dsf.cpp make clang++ happy when trying to compile the GPU library 2019-07-12 15:42:16 -04:00
lal_lj_dsf.cu do not mix c++ style and c-style comments 2020-04-26 22:50:24 -04:00
lal_lj_dsf.h Fix typo 2020-03-14 13:57:48 +09:00
lal_lj_dsf_ext.cpp convert gpu lib to use c++-style include files 2018-05-08 00:25:10 -04:00
lal_lj_expand.cpp make clang++ happy when trying to compile the GPU library 2019-07-12 15:42:16 -04:00
lal_lj_expand.cu do not mix c++ style and c-style comments 2020-04-26 22:50:24 -04:00
lal_lj_expand.h Fix typo 2020-03-14 13:57:48 +09:00
lal_lj_expand_coul_long.cpp make clang++ happy when trying to compile the GPU library 2019-07-12 15:42:16 -04:00
lal_lj_expand_coul_long.cu do not mix c++ style and c-style comments 2020-04-26 22:50:24 -04:00
lal_lj_expand_coul_long.h Fix typo 2020-03-14 13:57:48 +09:00
lal_lj_expand_coul_long_ext.cpp Updates to the core-shell gpu pair styles 2018-06-20 10:43:13 -05:00
lal_lj_expand_ext.cpp convert gpu lib to use c++-style include files 2018-05-08 00:25:10 -04:00
lal_lj_ext.cpp convert gpu lib to use c++-style include files 2018-05-08 00:25:10 -04:00
lal_lj_gromacs.cpp make clang++ happy when trying to compile the GPU library 2019-07-12 15:42:16 -04:00
lal_lj_gromacs.cu do not mix c++ style and c-style comments 2020-04-26 22:50:24 -04:00
lal_lj_gromacs.h Fix typo 2020-03-14 13:57:48 +09:00
lal_lj_gromacs_ext.cpp convert gpu lib to use c++-style include files 2018-05-08 00:25:10 -04:00
lal_lj_sdk.cpp make clang++ happy when trying to compile the GPU library 2019-07-12 15:42:16 -04:00
lal_lj_sdk.cu do not mix c++ style and c-style comments 2020-04-26 22:50:24 -04:00
lal_lj_sdk.h Fix typo 2020-03-14 13:57:48 +09:00
lal_lj_sdk_ext.cpp convert gpu lib to use c++-style include files 2018-05-08 00:25:10 -04:00
lal_lj_sdk_long.cpp make clang++ happy when trying to compile the GPU library 2019-07-12 15:42:16 -04:00
lal_lj_sdk_long.cu do not mix c++ style and c-style comments 2020-04-26 22:50:24 -04:00
lal_lj_sdk_long.h Fix typo 2020-03-14 13:57:48 +09:00
lal_lj_sdk_long_ext.cpp convert gpu lib to use c++-style include files 2018-05-08 00:25:10 -04:00
lal_lj_tip4p_long.cpp Merge branch 'master' into gpu_hip 2020-03-30 17:15:55 -04:00
lal_lj_tip4p_long.cu Merge branch 'master' into gpu_hip 2020-03-30 17:15:55 -04:00
lal_lj_tip4p_long.h Fix typo 2020-03-14 13:57:48 +09:00
lal_lj_tip4p_long_ext.cpp recover compilation with -DLAMMPS_BIGBIG and fix whitespace and formatting issues 2020-01-08 17:57:54 -05:00
lal_mie.cpp make clang++ happy when trying to compile the GPU library 2019-07-12 15:42:16 -04:00
lal_mie.cu do not mix c++ style and c-style comments 2020-04-26 22:50:24 -04:00
lal_mie.h Fix typo 2020-03-14 13:57:48 +09:00
lal_mie_ext.cpp convert gpu lib to use c++-style include files 2018-05-08 00:25:10 -04:00
lal_morse.cpp make clang++ happy when trying to compile the GPU library 2019-07-12 15:42:16 -04:00
lal_morse.cu do not mix c++ style and c-style comments 2020-04-26 22:50:24 -04:00
lal_morse.h Fix typo 2020-03-14 13:57:48 +09:00
lal_morse_ext.cpp convert gpu lib to use c++-style include files 2018-05-08 00:25:10 -04:00
lal_neighbor.cpp Fixed a copy-paste bug in lal_neighbor.cpp for neigh no 2018-07-22 13:15:01 -05:00
lal_neighbor.h Renamed dev_acc to dev_ilist for better description and updated the 3-body styles accordingly; also fixed bugs with accessing dev_packed from the three_end kernel of tersoff/mod and tersoff/zbl gpu styles for OpenCL builds 2018-07-22 11:27:14 -05:00
lal_neighbor_cpu.cu do not mix c++ style and c-style comments 2020-04-26 22:50:24 -04:00
lal_neighbor_gpu.cu do not mix c++ style and c-style comments 2020-04-26 22:50:24 -04:00
lal_neighbor_shared.cpp git-svn-id: svn://svn.icms.temple.edu/lammps-ro/trunk@15248 f3b2605a-c512-4ea7-a41b-209d697bcdaa 2016-07-01 23:27:26 +00:00
lal_neighbor_shared.h Merge 'gpu_hip_port' into master 2020-01-28 20:35:08 +03:00
lal_pppm.cpp Updated pppm 2019-10-20 00:18:28 -05:00
lal_pppm.cu do not mix c++ style and c-style comments 2020-04-26 22:50:24 -04:00
lal_pppm.h Merge branch 'master' into gpu_hip 2020-03-30 17:15:55 -04:00
lal_pppm_ext.cpp convert gpu lib to use c++-style include files 2018-05-08 00:25:10 -04:00
lal_precision.h Merge 'gpu_hip_port' into master 2020-01-28 20:35:08 +03:00
lal_preprocessor.h Merge 'gpu_hip_port' into master 2020-01-28 20:35:08 +03:00
lal_re_squared.cpp make clang++ happy when trying to compile the GPU library 2019-07-12 15:42:16 -04:00
lal_re_squared.cu do not mix c++ style and c-style comments 2020-04-26 22:50:24 -04:00
lal_re_squared.h Fix typo 2020-03-14 13:57:48 +09:00
lal_re_squared_ext.cpp convert gpu lib to use c++-style include files 2018-05-08 00:25:10 -04:00
lal_re_squared_lj.cu do not mix c++ style and c-style comments 2020-04-26 22:50:24 -04:00
lal_soft.cpp make clang++ happy when trying to compile the GPU library 2019-07-12 15:42:16 -04:00
lal_soft.cu do not mix c++ style and c-style comments 2020-04-26 22:50:24 -04:00
lal_soft.h Fix typo 2020-03-14 13:57:48 +09:00
lal_soft_ext.cpp convert gpu lib to use c++-style include files 2018-05-08 00:25:10 -04:00
lal_sw.cpp make clang++ happy when trying to compile the GPU library 2019-07-12 15:42:16 -04:00
lal_sw.cu do not mix c++ style and c-style comments 2020-04-26 22:50:24 -04:00
lal_sw.h Fix typo 2020-03-14 13:57:48 +09:00
lal_sw_ext.cpp convert gpu lib to use c++-style include files 2018-05-08 00:25:10 -04:00
lal_table.cpp make clang++ happy when trying to compile the GPU library 2019-07-12 15:42:16 -04:00
lal_table.cu do not mix c++ style and c-style comments 2020-04-26 22:50:24 -04:00
lal_table.h Fix typo 2020-03-14 13:57:48 +09:00
lal_table_ext.cpp convert gpu lib to use c++-style include files 2018-05-08 00:25:10 -04:00
lal_tersoff.cpp make clang++ happy when trying to compile the GPU library 2019-07-12 15:42:16 -04:00
lal_tersoff.cu do not mix c++ style and c-style comments 2020-04-26 22:50:24 -04:00
lal_tersoff.h Fix typo 2020-03-14 13:57:48 +09:00
lal_tersoff_ext.cpp convert gpu lib to use c++-style include files 2018-05-08 00:25:10 -04:00
lal_tersoff_extra.h Merge 'gpu_hip_port' into master 2020-01-28 20:35:08 +03:00
lal_tersoff_mod.cpp make clang++ happy when trying to compile the GPU library 2019-07-12 15:42:16 -04:00
lal_tersoff_mod.cu do not mix c++ style and c-style comments 2020-04-26 22:50:24 -04:00
lal_tersoff_mod.h Fix typo 2020-03-14 13:57:48 +09:00
lal_tersoff_mod_ext.cpp convert gpu lib to use c++-style include files 2018-05-08 00:25:10 -04:00
lal_tersoff_mod_extra.h Merge 'gpu_hip_port' into master 2020-01-28 20:35:08 +03:00
lal_tersoff_zbl.cpp make clang++ happy when trying to compile the GPU library 2019-07-12 15:42:16 -04:00
lal_tersoff_zbl.cu do not mix c++ style and c-style comments 2020-04-26 22:50:24 -04:00
lal_tersoff_zbl.h Fix typo 2020-03-14 13:57:48 +09:00
lal_tersoff_zbl_ext.cpp convert gpu lib to use c++-style include files 2018-05-08 00:25:10 -04:00
lal_tersoff_zbl_extra.h Merge 'gpu_hip_port' into master 2020-01-28 20:35:08 +03:00
lal_ufm.cpp make clang++ happy when trying to compile the GPU library 2019-07-12 15:42:16 -04:00
lal_ufm.cu remove trailing whitespace 2020-04-27 09:54:05 -04:00
lal_ufm.h Fix typo 2020-03-14 13:57:48 +09:00
lal_ufm_ext.cpp convert gpu lib to use c++-style include files 2018-05-08 00:25:10 -04:00
lal_vashishta.cpp make clang++ happy when trying to compile the GPU library 2019-07-12 15:42:16 -04:00
lal_vashishta.cu remove trailing whitespace 2020-04-27 09:54:05 -04:00
lal_vashishta.h Fix typo 2020-03-14 13:57:48 +09:00
lal_vashishta_ext.cpp convert gpu lib to use c++-style include files 2018-05-08 00:25:10 -04:00
lal_yukawa.cpp make clang++ happy when trying to compile the GPU library 2019-07-12 15:42:16 -04:00
lal_yukawa.cu do not mix c++ style and c-style comments 2020-04-26 22:50:24 -04:00
lal_yukawa.h Fix typo 2020-03-14 13:57:48 +09:00
lal_yukawa_colloid.cpp make clang++ happy when trying to compile the GPU library 2019-07-12 15:42:16 -04:00
lal_yukawa_colloid.cu do not mix c++ style and c-style comments 2020-04-26 22:50:24 -04:00
lal_yukawa_colloid.h Fix typo 2020-03-14 13:57:48 +09:00
lal_yukawa_colloid_ext.cpp convert gpu lib to use c++-style include files 2018-05-08 00:25:10 -04:00
lal_yukawa_ext.cpp convert gpu lib to use c++-style include files 2018-05-08 00:25:10 -04:00
lal_zbl.cpp make clang++ happy when trying to compile the GPU library 2019-07-12 15:42:16 -04:00
lal_zbl.cu do not mix c++ style and c-style comments 2020-04-26 22:50:24 -04:00
lal_zbl.h Fix typo 2020-03-14 13:57:48 +09:00
lal_zbl_ext.cpp convert gpu lib to use c++-style include files 2018-05-08 00:25:10 -04:00

README

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

                  --------------------------------
                     LAMMPS ACCELERATOR LIBRARY
                  --------------------------------
                     
                       W. Michael Brown (ORNL)
                        Trung Dac Nguyen (ORNL/Northwestern)
                          Peng Wang (NVIDIA)
                       Axel Kohlmeyer (Temple)
                         Steve Plimpton (SNL)
                        Inderaj Bains (NVIDIA)

-------------------------------------------------------------------

This directory has source files to build a library that LAMMPS
links against when using the GPU package.

This library must be built with a C++ compiler, before LAMMPS is
built, so LAMMPS can link against it.

You can type "make lib-gpu" from the src directory to see help on how
to build this library via make commands, or you can do the same thing
by typing "python Install.py" from within this directory, or you can
do it manually by following the instructions below.

Build the library using one of the provided Makefile.* files or create
your own, specific to your compiler and system.  For example:

make -f Makefile.linux

When you are done building this library, two files should
exist in this directory:

libgpu.a		the library LAMMPS will link against
Makefile.lammps		settings the LAMMPS Makefile will import

Makefile.lammps is created by the make command, by copying one of the
Makefile.lammps.* files.  See the EXTRAMAKE setting at the top of the
Makefile.* files.

IMPORTANT: You should examine the final Makefile.lammps to insure it is
correct for your system, else the LAMMPS build can fail.

IMPORTANT: If you re-build the library, e.g. for a different precision
(see below), you should do a "make clean" first, e.g. make -f
Makefile.linux clean, to insure all previous derived files are removed
before the new build is done.

Makefile.lammps has settings for 3 variables:

user-gpu_SYSINC = leave blank for this package
user-gpu_SYSLIB = CUDA libraries needed by this package
user-gpu_SYSPATH = path(s) to where those libraries are

Because you have the CUDA compilers on your system, you should have
the needed libraries.  If the CUDA development tools were installed
in the standard manner, the settings in the Makefile.lammps.standard
file should work.

-------------------------------------------------------------------

                          GENERAL NOTES
                  --------------------------------
                          
This library, libgpu.a, provides routines for GPU acceleration
of certain LAMMPS styles and neighbor list builds. Compilation of this 
library requires installing the CUDA GPU driver and CUDA toolkit for
your operating system. Installation of the CUDA SDK is not necessary.
In addition to the LAMMPS library, the binary nvc_get_devices will also
be built. This can be used to query the names and properties of GPU 
devices on your system. A Makefile for OpenCL and ROCm HIP compilation
is provided, but support for it is not currently provided by the developers.
Details of the implementation are provided in:

----

Brown, W.M., Wang, P. Plimpton, S.J., Tharrington, A.N. Implementing 
Molecular Dynamics on Hybrid High Performance Computers - Short Range 
Forces. Computer Physics Communications. 2011. 182: p. 898-911. 

and

Brown, W.M., Kohlmeyer, A. Plimpton, S.J., Tharrington, A.N. Implementing 
Molecular Dynamics on Hybrid High Performance Computers - Particle-Particle 
Particle-Mesh. Computer Physics Communications. 2012. 183: p. 449-459. 

and

Brown, W.M., Masako, Y. Implementing Molecular Dynamics on Hybrid High 
Performance Computers - Three-Body Potentials. Computer Physics Communications. 
2013. 184: p. 27852793.

----

NOTE: Installation of the CUDA SDK is not required, only the CUDA
toolkit itself or an OpenCL 1.2 compatible header and library.

Pair styles supporting GPU acceleration this this library
are marked in the list of Pair style potentials with a "g".
See the online version at: https://lammps.sandia.gov/doc/Commands_pair.html

In addition the (plain) pppm kspace style is supported as well.


                     MULTIPLE LAMMPS PROCESSES
                  --------------------------------
                     
Multiple LAMMPS MPI processes can share GPUs on the system, but multiple
GPUs cannot be utilized by a single MPI process. In many cases, the
best performance will be obtained by running as many MPI processes as
CPU cores available with the condition that the number of MPI processes
is an integer multiple of the number of GPUs being used. See the 
LAMMPS user manual for details on running with GPU acceleration.


                    BUILDING AND PRECISION MODES
                  --------------------------------

To build, edit the CUDA_ARCH, CUDA_PRECISION, CUDA_HOME variables in one of 
the Makefiles. CUDA_ARCH should be set based on the compute capability of
your GPU. This can be verified by running the nvc_get_devices executable after
the build is complete. Additionally, the GPU package must be installed and
compiled for LAMMPS. This may require editing the gpu_SYSPATH variable in the
LAMMPS makefile.

Please note that the GPU library accesses the CUDA driver library directly,
so it needs to be linked not only to the CUDA runtime library (libcudart.so)
that ships with the CUDA toolkit, but also with the CUDA driver library
(libcuda.so) that ships with the Nvidia driver. If you are compiling LAMMPS
on the head node of a GPU cluster, this library may not be installed,
so you may need to copy it over from one of the compute nodes (best into
this directory). Recent CUDA toolkits starting from CUDA 9 provide a dummy
libcuda.so library (typically under $(CUDA_HOME)/lib64/stubs), that can be used for
linking.

The gpu library supports 3 precision modes as determined by 
the CUDA_PRECISION variable:

  CUDA_PRECISION = -D_SINGLE_SINGLE  # Single precision for all calculations
  CUDA_PRECISION = -D_DOUBLE_DOUBLE  # Double precision for all calculations
  CUDA_PRECISION = -D_SINGLE_DOUBLE  # Accumulation of forces, etc. in double

As of CUDA 7.5 only GPUs with compute capability 2.0 (Fermi) or newer are
supported and as of CUDA 9.0 only compute capability 3.0 (Kepler) or newer
are supported. There are some limitations of this library for GPUs older
than that, which require additional preprocessor flag, and limit features,
but they are kept for historical reasons. There is no value in trying to
use those GPUs for production calculations.

You have to make sure that you set a CUDA_ARCH line suitable for your
hardware and CUDA toolkit version: e.g. -arch=sm_35 for Tesla K20 or K40
or -arch=sm_52 GeForce GTX Titan X. A detailed list of GPU architectures
and CUDA compatible GPUs can be found e.g. here: 
https://en.wikipedia.org/wiki/CUDA#GPUs_supported

NOTE: when compiling with CMake, all of the considerations listed below
are considered within the CMake configuration process, so no separate 
compilation of the gpu library is required. Also this will build in support
for all compute architecture that are supported by the CUDA toolkit version
used to build the gpu library.

Please note the CUDA_CODE settings in Makefile.linux_multi, which allows
to compile this library with support for multiple GPUs. This list can be
extended for newer GPUs with newer CUDA toolkits and should allow to build
a single GPU library compatible with all GPUs that are worth using for
GPU acceleration and supported by the current CUDA toolkits and drivers.

NOTE: The system-specific setting LAMMPS_SMALLBIG (default), LAMMPS_BIGBIG, 
      or LAMMPS_SMALLSMALL if specified when building LAMMPS (i.e. in 
      src/MAKE/Makefile.foo) should be consistent with that specified 
      when building libgpu.a (i.e. by LMP_INC in the lib/gpu/Makefile.bar).

                      BUILDING FOR HIP FRAMEWORK
                   --------------------------------
1. Install the latest ROCm framework (https://github.com/RadeonOpenCompute/ROCm).
2. GPU sorting requires installing hipcub 
(https://github.com/ROCmSoftwarePlatform/hipCUB). The HIP CUDA-backend
additionally requires cub (https://nvlabs.github.io/cub). Download and
extract the cub directory to lammps/lib/gpu/ or specify an appropriate
path in lammps/lib/gpu/Makefile.hip.
3. In Makefile.hip it is possible to specify the target platform via 
export HIP_PLATFORM=hcc or HIP_PLATFORM=nvcc as well as the target 
architecture (gfx803, gfx900, gfx906 etc.)
4. If your MPI implementation does not support `mpicxx --showme` command,
it is required to specify the corresponding MPI compiler and linker flags
in lammps/lib/gpu/Makefile.hip and in lammps/src/MAKE/OPTIONS/Makefile.hip.
5. Building the GPU library (libgpu.a): 
    cd lammps/lib/gpu; make -f Makefile.hip -j
6. Building the LAMMPS executable (lmp_hip):
    cd ../../src; make hip -j

                      EXAMPLE CONVENTIONAL BUILD PROCESS
                  --------------------------------
                    
cd ~/lammps/lib/gpu
emacs Makefile.linux
make -f Makefile.linux
./nvc_get_devices
cd ../../src
emacs ./MAKE/Makefile.linux
make yes-asphere
make yes-kspace
make yes-gpu
make linux