Commit Graph

352 Commits

Author SHA1 Message Date
Matthew Martineau
3b266b8266 Fix for namespace collision with #define RAJA 2016-05-06 10:53:12 +01:00
Matthew Martineau
45381da0b2 Initial commit of in progress developments of RAJA and KOKKOS stream 2016-05-06 10:46:35 +01:00
James Price
d4b3b3533c Update SYCL version to work with ComputeCpp
Still needs proper CMake rules and kernel names need to be fixed for
multiple template instantiations.
2016-05-06 00:38:30 +01:00
Matthew Martineau
0a738efa54 Merging in changes from trunk 2016-05-05 17:23:47 +01:00
Matthew Martineau
7c28a6386b Added the Kokkos and RAJA implementations 2016-05-05 17:22:29 +01:00
Tom Deakin
f0afa0c1e4 Add reference OpenMP 3.0 version 2016-05-04 10:41:41 +01:00
Tom Deakin
48cae0cbc1 Make sure CUDA nvcc builds with C++11 2016-05-03 15:20:26 +01:00
Tom Deakin
31819b7778 Add bones of OpenACC in CMake config 2016-05-03 15:07:51 +01:00
Tom Deakin
0b0de4e0c3 Implement the OpenACC device string functions, and device selector 2016-05-03 14:50:09 +01:00
James Price
b45f311e0d Add missing SYCL source files 2016-05-03 14:48:35 +01:00
James Price
40a0a6551d Remove extra -std=c++11 from CMake build 2016-05-03 14:46:08 +01:00
James Price
da4f918788 Add initial SYCL implementation 2016-05-03 14:45:13 +01:00
Tom Deakin
1a38b18954 Add OpenACC version 2016-05-03 14:36:08 +01:00
Tom Deakin
530b2adda2 Add License text to all files 2016-05-03 12:32:03 +01:00
Tom Deakin
95a10511ec Update LICENSE date 2016-05-03 12:28:44 +01:00
Tom Deakin
21c9022a3f Keep C++11 flag explicitely defined in Cmake 2016-05-03 12:24:33 +01:00
Tom Deakin
662fcaf4b5 Add CMake things to gitignore 2016-05-03 12:18:41 +01:00
Tom Deakin
57ea4b8cae Require CMake 3.2 so can check for C++11 nicely 2016-05-03 12:17:33 +01:00
Tom Deakin
1bd27428bd Require CUDA 7 for C++11 support 2016-05-03 12:17:21 +01:00
Tom Deakin
8ce15a28aa Update CMake with better binary name and source location 2016-05-03 11:45:25 +01:00
Tom Deakin
a355acf2ee Move source files to top level directory 2016-05-03 11:43:25 +01:00
Tom Deakin
fcc9588c94 Change cl2.hpp include 2016-05-03 11:41:40 +01:00
Tom Deakin
83516ae352 Update cl2.hpp 2016-05-03 11:41:00 +01:00
Tom Deakin
95f9efb7d9 Remove old version 2016-05-03 11:40:46 +01:00
Tom Deakin
e91c31b44a Tidy up delete of object with correct deconstructors and delete 2016-05-03 11:37:35 +01:00
Tom Deakin
26bb912646 Check OCL device has enough memory for buffers 2016-05-03 11:23:36 +01:00
Tom Deakin
2738e75b04 Print out array sizes 2016-05-03 11:20:39 +01:00
Tom Deakin
fd121c2467 Use device info to select CUDA device 2016-05-03 11:15:38 +01:00
Tom Deakin
3462e61c16 Check device support float 2016-05-03 11:05:21 +01:00
Tom Deakin
d7c17d72d5 Use device index from CLI in OpenCL 2016-05-03 11:02:33 +01:00
Tom Deakin
77b521f5f0 Use float or double from CLI 2016-05-03 10:52:27 +01:00
Tom Deakin
ac55358964 Implement device info functions 2016-05-03 10:51:16 +01:00
Tom Deakin
72ddd05f61 Add parse arguments code 2016-04-29 18:45:57 +01:00
Tom Deakin
2cb4fe74b1 Use original parseUInt function 2016-04-29 18:38:49 +01:00
Tom Deakin
d557915007 Remove static keyword 2016-04-29 18:36:47 +01:00
Tom Deakin
3c394b9db0 Move device functions outside class 2016-04-29 18:28:21 +01:00
Tom Deakin
1a96b71935 First attempt at parse args 2016-04-29 13:59:31 +01:00
Tom Deakin
00305ba120 Write to std err 2016-04-28 23:37:53 +01:00
Tom Deakin
f5ba77f4bd List CUDA devices function 2016-04-28 23:20:10 +01:00
Tom Deakin
d1f8cd1b48 Implement some CUDA routines for device info 2016-04-28 23:06:06 +01:00
Tom Deakin
a1cab96c57 Define the implementaiton strings in each implementation header 2016-04-28 17:20:40 +01:00
Tom Deakin
7006871cbe Get version from CMake configued header and only build implementations which have the runtime around 2016-04-28 17:10:14 +01:00
Tom Deakin
b9e70e11ab Add CMakeLists.txt file with CUDA and OCL builds 2016-04-28 16:58:32 +01:00
Tom Deakin
088778977b Add OCL copy functions 2016-04-28 15:11:02 +01:00
Tom Deakin
b514969193 Create OCL device buffers 2016-04-28 15:08:12 +01:00
Tom Deakin
77f6df856c Call kernels in OCL 2016-04-28 15:05:01 +01:00
Tom Deakin
eeaf9358ab Create OCL kernel functors 2016-04-28 15:01:43 +01:00
Tom Deakin
38e1e3b704 Add starts of OpenCL implementation 2016-04-28 12:59:14 +01:00
Tom Deakin
a745ffc724 Add more keywords to CUDA header 2016-04-28 12:07:09 +01:00
Tom Deakin
59fe9738b6 Add a templated run function to make double/float switch easy 2016-04-28 12:03:50 +01:00