Commit Graph

174 Commits

Author SHA1 Message Date
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
Axel Kohlmeyer 3394d18a2a convert gpu lib to use c++-style include files 2018-05-08 00:25:10 -04:00
Axel Kohlmeyer 776f588746 add support for UFM pair style support to OpenCL compilation makefile 2018-02-12 18:43:30 +01:00
Steve Plimpton 4af14becb5
Merge pull request #710 from rpleite/add-pair-ufm
Add the UFM pair potential - (GPU/OPT/OMP)
2018-02-02 14:38:28 -07:00
Axel Kohlmeyer b34000a5e1 make *_gpu_reinit() functions consistent in returning void. correct prototypes in src/GPU, too.
this supersedes and closes #719
2017-11-04 02:49:22 -04:00
Rodolfo Leite 941ee565a1 Added lal_ufm_ext.cpp in lib/gpu 2017-10-24 11:12:51 -02:00
Rodolfo Leite b63acf6843 Added the UFM files (doc/src - lib/gpu - src) 2017-10-24 11:11:10 -02:00
Axel Kohlmeyer be96486d66 compile all objects in the GPU library with -fPIC for building shared object 2017-09-19 11:24:48 -04:00
Axel Kohlmeyer 48dd824b26 ignore generated header files with OpenCL kernels 2017-09-19 11:24:38 -04:00
Steve Plimpton f971cd6e45 Merge pull request #647 from rbberger/gpu_opencl_2
Use OpenCL 2.x API in GPU package when supported
2017-09-12 10:56:13 -06:00
Richard Berger 84b84c10db Use OpenCL 2.x API in GPU package when supported 2017-09-09 19:53:56 -04:00
Anders Hafreager dbc60d949f Fixed OpenCL compilation issues with __global keywords 2017-09-06 15:08:02 +02:00
Axel Kohlmeyer e88ff8d6f9 correct embedded help for GPU lib Install.py 2017-08-23 15:20:30 -04:00
Steve Plimpton 00aafef1a8 Merge pull request #597 from ndtrung81/three-body-short-nlist
Implementing short neighbor lists for three-body gpu styles
2017-08-17 11:31:59 -06:00
Axel Kohlmeyer 6d24be8bb7 whitespace cleanup 2017-08-10 21:14:40 -04:00
Axel Kohlmeyer 30431d4edb rework Install.py for gpu library. make it consistent with other lib folders and support python3 2017-08-08 16:57:27 -04:00
Trung Nguyen aa60ef6ed8 Cleaned up 3-body kernels, reverted some mistaken changes to vashishta 2017-07-23 00:08:55 -05:00
Trung Nguyen a71f5a0c20 Enabled again neigh no with tpa > 1 for 3-body gpu styles for backward compatibility, could be slower than neigh no tpa 1 in many cases 2017-07-22 22:57:37 -05:00
Trung Nguyen 3d1d0c58c7 Cleaned up 3-body gpu styles, and fixed a bug for tersoff/zbl/gpu.
There is a unresolved bug for neigh no with tpa > 1 with BaseThree, enforce tpa = 1 for neigh no in BaseThree for now.
2017-07-21 12:08:04 -05:00
Steve Plimpton 296e572e69 better Install.py script for KIM from Ryan Elliott 2017-07-14 16:25:16 -06:00
Trung Nguyen cdac5f496c Built 3-body short neighbor list for the 3-body kernels using per-pair cutoffs for vashishta gpu style 2017-07-11 00:13:56 -05:00
Trung Nguyen 8c9db3ea00 Built 2-body short neighbor list and used for 2-body kernels in tersoff gpu styles 2017-07-10 23:50:21 -05:00