Commit Graph

195 Commits

Author SHA1 Message Date
Axel Kohlmeyer e832b5d50b
make clang++ happy when trying to compile the GPU library 2019-07-12 15:42:16 -04:00
Trung Nguyen 46a9772a6d Minor clean-up 2019-07-05 12:12:29 -05:00
Trung Nguyen 49f27573a7 Fixed a bug in lj96 involving missing the special_lj factor 2019-07-03 23:44:33 -05:00
Christoph Junghans 8c3d18520d add missing include needed on ppc64le 2019-06-26 10:45:31 -06:00
Axel Kohlmeyer 2f29bd29f4
Merge pull request #1430 from ndtrung81/gpu-neigh-hybrid
Enable neighbor build on the device for pair hybrid substyles
2019-06-17 14:12:40 -04:00
Richard Berger 8145c5028d Fix OpenCL compilation errors due to bad comments in macros 2019-04-30 00:44:12 -04:00
Trung Nguyen 4a4297591e Did some more cleanups 2019-04-17 12:04:31 -05:00
Trung Nguyen 1f43efc111 Cleaned up the changes in Device and the base class of the pair styles 2019-04-17 00:09:49 -05:00
Trung Nguyen c55009a0ac Enabled neighbor list build on the device with pair_style hybrid and hybrid/overlay 2019-04-16 23:30:25 -05:00
Axel Kohlmeyer cd6b23d104
explicitly request OpenCL version 1.2 compatibility when compiling GPU package kernels for OpenCL 2019-03-22 09:50:31 -04:00
Axel Kohlmeyer 8ee1fefe19 add pointer to README and Manual to help. 2019-01-31 18:46:43 -05:00
Axel Kohlmeyer 763dda64af update lib/gpu/README to current state 2019-01-31 18:45:17 -05:00
Axel Kohlmeyer 1465352454 some cleanups and small bugfixes to conform better with python conventions 2019-01-28 17:37:05 -05:00
Axel Kohlmeyer c3a15e221d use sys.exit() instead of the removed error() function 2019-01-14 14:13:40 -05:00
Axel Kohlmeyer 1e1f754d0c make gpu library Install.py use argparse module 2019-01-14 12:52:21 -05:00
Axel Kohlmeyer 4168855ba3 reduce distracting nvcc (or rather ptxas) verbosity 2018-12-03 19:27:03 -05:00
Axel Kohlmeyer e5c555fa7d consolidate shared code from various Install.py files into install_helpers.py 2018-12-03 17:50:20 -05:00
Axel Kohlmeyer eda79bd1c2 use shutil.rmtree() instead of calling 'rm -rf' for increased portability 2018-11-28 20:46:50 -05:00
Axel Kohlmeyer f254b8e3a3
Merge pull request #1226 from akohlmey/cmake-gpu-enhancements
Enhancements for using CMake with the GPU package, improved compatibility with cmake 3.x versions, improved handling of shared library building.
2018-11-27 16:05:47 -05:00
Axel Kohlmeyer 5df2f92651 minor cleanup in lib/gpu 2018-11-26 18:22:33 -05:00
Axel Kohlmeyer e0ff230268 remove comment-in-comment 2018-11-26 17:03:48 -05:00
Steve Plimpton ccacf0d4bb
Merge pull request #1048 from lammps/doc-reorg-start
Documentation Refactoring: Section Start
2018-08-15 15:25:17 -06:00
Steven J. Plimpton 9c3748e07c change Python.txt to Python_head.txt, adapt GPU package syntax 2018-08-15 07:31:31 -06:00
Steven J. Plimpton 7ec52784cb more changes to doc pages and CMakeLists.txt 2018-08-14 15:44:25 -06:00
Richard Berger 65d11171c4 Replace functions which were deprecated since CUDA 5 2018-08-09 03:36:21 -04:00
Richard Berger 6d60075d3b GPU Package: Use __shfl_xor_sync starting with CUDA 9 2018-08-09 02:33:35 -04:00
Richard Berger ac7aeb6862 Add extra check for OpenCL timers
Fixes issue #1034 by preventing time() to access non-existent OpenCL events
2018-08-07 21:43:59 -04:00
Axel Kohlmeyer 923ae041dc (temporary) workaround for memory leaks with OpenCL and MPI for upcoming stable release 2018-07-23 15:52:42 -04:00
Trung Nguyen 644888d03c Fixed bugs with time_q and time_quat not calling start() and stop() when _charge and/or _rot in Atom are true for OpenCL builds 2018-07-22 15:12:45 -05:00
Trung Nguyen b612c7ee75 Fixed a copy-paste bug in lal_neighbor.cpp for neigh no 2018-07-22 13:15:01 -05:00
Trung Nguyen d71e037c23 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
Trung Nguyen 94da4be922 Fixed bugs for tersoff gpu styles for OpenCL builds 2018-07-21 13:50:10 -05:00
Trung Nguyen 01c27194d4 Fixes for lal_neighbor.cpp for get_host() and for time_kernel 2018-07-21 00:18:30 -05:00
Trung Nguyen 223de57401 Added set_platform_accelerator() for nvd_device.h for OpenCL compatibility 2018-07-21 00:14:31 -05:00
Steve Plimpton 884e72a4ba
Merge pull request #1008 from akohlmey/support-platform-select
OpenCL related fixes and improvements to the GPU package
2018-07-20 14:32:49 -06:00
Axel Kohlmeyer de8176b4fc various minor OpenCL related fixes and improvements to the GPU package
- document previously undocumented OpenCL tune settings
- implement OpenCL platform selection through prefixing the device type with the platform id separated by a colon
- allow passing custom tune parameters though postfixing the device type with the 13 tuneable parameters separated by commas
- remove an extra clear() that would delete device properties structs an cause LAMMPS to output garbage strings
2018-07-20 14:41:54 -04:00
Richard Berger 2eb8d779e8 Fixes a memory leak when using OpenCL
The GPU package uses OpenCL events for measuring time. These have to be
released to free up memory. I removed the clReleaseEvent() calls in the
clear() method because in some cases they don't exist yet and I couldn't
find a way to check for a valid event (clRetainEvent didn't work). This
at least fixes the massive leak during simulations.

See issue #1006
2018-07-18 18:54:57 -04:00
Axel Kohlmeyer ad4f61a5ce update fatbin makefile for libgpu.a to latest additions 2018-07-10 09:07:54 -04:00
Trung Nguyen 28504e91c0 Added missing source files for born/coul/wolf/cs in the gpu library 2018-06-20 15:08:24 -05:00
Trung Nguyen a9b794b2ab Updates to the core-shell gpu pair styles 2018-06-20 10:43:13 -05:00
Trung Nguyen 3ae8fdccd8 Updated the kernels for born/coul/long/cs and coul/long/cs gpu styles 2018-06-19 16:22:00 -05:00
Trung Nguyen 70a7b37614 Updated pair coul/long/cs and born/coul/long/cs; updated gpu neighbor builds to support core-shell styles where r2 can be tiny. 2018-06-19 15:50:02 -05:00
Trung Nguyen 6842a527e0 Fixed bugs and added born/coul/long/cs/gpu and coul/long/cs/gpu, need tests 2018-06-18 00:15:28 -05:00
Trung Nguyen 265b6c261e Fixed bugs with lj/expand/coul/long and its gpu version 2018-06-15 23:38:37 -05:00
ndtrung a4a3133b76 Switched to standard C++ header files for consistency with other source files 2018-06-01 23:13:49 -05:00
Trung Nguyen 341fa160fe Updated UCL_Device built with OpenCL to use platforms that support accelerators by default 2018-05-23 16:11:55 -05:00
Trung Nguyen 2f9e6d4566 Fixed bugs in lal_device.cpp with node_names dynamically allocated and dipole/long/gpu 2018-05-21 23:32:25 -05:00
Trung Nguyen 838a1938bb Added pair styles lj/expand/coul/long to USER-MISC and its gpu version to GPU package, added lj/cut/dipole/long/gpu; and added an example Makfile to build GPU package for multi-arch 2018-05-20 17:03:12 -05:00
Axel Kohlmeyer fccc16f42c tune OpenCL for generic architecture by default 2018-05-08 00:50:23 -04:00
Axel Kohlmeyer e7e1827e57 remove variable length arrays in gpu lib 2018-05-08 00:48:53 -04:00