Commit Graph

16 Commits

Author SHA1 Message Date
Tom Deakin
018d8a4510 [OpenCL] Remove dot kernel object in deconstructor 2021-02-02 15:45:54 +00:00
Tom Deakin
94c7c3dbd8 use signed array size for OpenCL 2021-01-12 10:21:48 +00:00
Ruyman Reyes
63f32fcb51 Manually clearing the global device vector
The vector of devices is a global object, which destruction order is
undefined. In some platforms, the OpenCL library has been unloaded
before this destructor is hit, which causes a segmentation fault after
the program ends.  By clearing the global vector of devices on
destruction of the OpenCL and SYCL Stream benchmarks we avoid the
problem.
2018-05-02 15:21:41 +01:00
Tom Deakin
d42bcd4675 Merge remote-tracking branch 'origin/init-arrays' into devel 2016-11-04 09:17:54 +00:00
James Price
7f4761ae52 Replace write_arrays with init_arrays
This allows each model to initialise their arrays with a parallel
approach, which yields the first touch required for good performance
on NUMA architectures.
2016-11-02 11:22:01 +00:00
James Price
d7c48c5063 Slight tweak to dot config output to fix parsing scripts 2016-10-26 15:47:10 +01:00
James Price
21556af500 [OCL] Automatically determine dot NDRange config 2016-10-26 15:19:14 +01:00
James Price
d5482b74f4 Improve performance of OpenCL dot implementation 2016-10-24 21:26:09 +01:00
Tom Deakin
f32cf3bad3 Merge branch 'master' into kernel-dot
Conflicts:
	main.cpp
2016-10-24 13:53:58 +01:00
Tom Deakin
0bed614734 [OpenCL] Use global defined scalar value 2016-10-24 13:51:47 +01:00
James Price
c9b3d07b84 Fix OpenCL host code for dot kernel
Wrong number of blocks was being copied and summed, and the host sums
vector didn't have the correct size.
2016-10-24 12:49:58 +01:00
Tom Deakin
2085cacea0 Add an OpenCL dot kernel
We have to name the kernel stream_dot (for example) because the
"dot" kernel already exists.
2016-10-14 17:07:55 +01:00
James Price
a2778f523e [OCL] Print build log if kernel compilation fails 2016-07-06 14:11:29 +01:00
Tom Deakin
31cb567e21 Switch data from 1.0, 2.0 and 3.0 to 0.1, 0.2, and 0.3 resp.
Using integers for maths gets unstable past 38 interations even
in double precision. Using the original values/10 is safe up to
the default 100 iterations.
2016-05-11 15:51:19 +01:00
Tom Deakin
530b2adda2 Add License text to all files 2016-05-03 12:32:03 +01:00
Tom Deakin
a355acf2ee Move source files to top level directory 2016-05-03 11:43:25 +01:00