Tom Lin
23f343fa15
Default to C++11
2021-03-24 17:20:11 +00:00
Tom Lin
fc6d032d7f
Use model name as exe prefix
...
Drop C++17 requirement for OMP
2021-03-23 18:16:42 +00:00
Tom Lin
14aefecc57
Re-add all compile and arch dependent flags
...
Fix ACC not linking on CMake < 3.16
Fix CUDA warnings for CMP0104 and avoid repeated -O[n] flags
Fix ComputeCpp not picking up custom flags
[CI] Highlight compiler warnings
[CI] Don't skip remaining tests when one fails
[CI] Add CMake 3.13, 3.15, 3.18 checks
2021-03-11 15:46:23 +00:00
Tom Lin
ec131e2cfc
Merge branch 'main' into cmake
2021-03-10 17:22:04 +00:00
Tom Deakin
3c637cd04d
Merge pull request #93 from UoB-HPC/sycl_size_t
...
Fix int to size_t narrowing for SYCL
2021-03-10 17:09:04 +00:00
Tom Lin
94e0c5ff4d
Fix int to size_t narrowing for SYCL, closes #92
2021-03-10 15:48:41 +00:00
Tom Lin
856822d663
Don't run the CI twice in an open PR
2021-03-08 20:31:23 +00:00
Tom Lin
cda17d7b30
Add -march=native
2021-03-08 20:19:44 +00:00
Tom Lin
6536c1736a
Initial CMake+CI integration
2021-03-05 13:41:35 +00:00
Tom Deakin
9025afec1a
Merge pull request #88 from UoB-HPC/nstream
...
Add PRK Nstream kernel
2021-02-22 15:14:21 +00:00
Tom Deakin
312af25cfb
Merge branch 'main' into nstream
2021-02-22 15:13:31 +00:00
Tom Deakin
aa8701af76
Merge pull request #87 from UoB-HPC/computecpp_fix
...
Fixed sycl kernel linking for computecpp
2021-02-19 16:29:44 +00:00
Tom Deakin
683b8fcf88
update README
2021-02-18 13:51:24 +00:00
Tom Deakin
13c9e0c1c7
update changelog
2021-02-18 13:48:45 +00:00
Tom Deakin
a6f23ba900
Add option to run nstream in isolation
2021-02-18 13:32:35 +00:00
Tom Deakin
9715ffff27
Merge branch 'main' into nstream
...
Conflicts:
CHANGELOG.md
main.cpp
2021-02-18 13:20:36 +00:00
Tom Deakin
13dfff45a6
Merge pull request #90 from UoB-HPC/generalise-run
...
Generalise run function
2021-02-18 13:18:38 +00:00
Tom Deakin
ba47571ab2
update changelog
2021-02-18 12:37:58 +00:00
Tom Deakin
3deb9f8eff
Generalise the run functions to share construction of models and check vectors
...
An enum is added and set by the command line options to choose the running mode:
all 5 kernels or triad only.
There is now only one run fuction which call the constructor of each
model implementation, calling another routine to run the kernels.
The output is then determined by the enum value.
2021-02-18 12:35:12 +00:00
Tom Deakin
487e59c6a9
Don't run nstream in the main benchmark
2021-02-18 11:37:49 +00:00
Tom Deakin
46bbab6ebb
Revert "Update initial starting values"
...
This reverts commit 44e74b574b .
2021-02-18 11:06:14 +00:00
Tom Lin
94e394845f
Clean up SYCL.make with unified build target
2021-02-17 17:17:20 +00:00
Tom Deakin
f90d911551
Add nstream to OpenACC, but it looks like NVHPC is ignoring the += in the kernel so results are wrong
2021-02-03 16:58:47 +00:00
Tom Deakin
c53b635a3c
Add nstream kernel to HIP
2021-02-03 11:25:26 +00:00
Tom Deakin
44e74b574b
Update initial starting values
2021-02-03 11:21:56 +00:00
Tom Deakin
490af52147
Add nstream to C++ STD version -- untested as compilers not ready
2021-02-03 10:54:33 +00:00
Tom Deakin
579247dc06
Normalise sum result to mitigate errors with large iteration counts
2021-02-03 10:16:13 +00:00
Tom Deakin
210cfb7520
Revert "Update initial array values to ensure dot product works with the nstream kernel"
...
This reverts commit 5346e1226d .
Conflicts:
CHANGELOG.md
2021-02-03 10:14:58 +00:00
Tom Deakin
aefe5af18b
Add nstream to Kokkos
2021-02-02 15:58:00 +00:00
Tom Deakin
4203ccb017
Add nstream kernel to OpenCL
2021-02-02 15:46:53 +00:00
Tom Deakin
fdac285110
Merge branch 'main' into nstream
...
Conflicts:
CHANGELOG.md
2021-02-02 15:46:39 +00:00
Tom Deakin
018d8a4510
[OpenCL] Remove dot kernel object in deconstructor
2021-02-02 15:45:54 +00:00
Tom Deakin
30231575cb
Tidy CUDA memory mode Makefile
2021-02-02 12:33:18 +00:00
Tom Deakin
05e3e5a127
Add CUDA nstream kernel
2021-02-02 12:32:33 +00:00
Tom Deakin
fa477bd466
Merge branch 'main' into nstream
2021-02-02 12:33:39 +00:00
Tom Deakin
bda9525b95
Add SYCL 1.2.1 nstream kernel
2021-02-02 12:29:03 +00:00
Tom Deakin
b470e4466c
Merge branch 'main' into nstream
2021-02-02 11:49:38 +00:00
Tom Deakin
5d697fdfe9
Add missing OpenMP flag to Intel CPU builds
2021-02-02 11:49:16 +00:00
Tom Deakin
4c905e6a86
Add OpenMP nstream kernel
2021-02-02 11:44:37 +00:00
Tom Deakin
84406024cf
Update CHANGELOG
2021-02-02 11:28:33 +00:00
Tom Deakin
5346e1226d
Update initial array values to ensure dot product works with the nstream kernel
2021-02-02 11:27:54 +00:00
Tom Deakin
767df86f1a
Update README with nstream citations
2021-02-02 11:25:48 +00:00
Tom Deakin
bd04e6db3c
Add nstream kernel from PRK
...
PRK has a nstream kernel, which is Triad with a += update.
This means there are 3 reads and a write, which is a higher
read/write ratio. In addition, non-temporal stores for the
write on CPUs will not be beneficial, and so compilers should
take care to emit these for the other kernels, but not these.
2021-02-02 11:25:42 +00:00
Tom Deakin
f99f8d35d9
Revert "Add nstream kernel from PRK"
...
This reverts commit 1e94a41f3c .
2021-02-02 11:25:27 +00:00
Tom Deakin
877f820282
Revert "Update README with nstream citations"
...
This reverts commit cb0c345ad5 .
2021-02-02 11:25:14 +00:00
Tom Deakin
cb0c345ad5
Update README with nstream citations
2021-02-02 11:24:41 +00:00
Tom Deakin
1e94a41f3c
Add nstream kernel from PRK
...
PRK has a nstream kernel, which is Triad with a += update.
This means there are 3 reads and a write, which is a higher
read/write ratio. In addition, non-temporal stores for the
write on CPUs will not be beneficial, and so compilers should
take care to emit these for the other kernels, but not these.
2021-02-01 17:41:30 +00:00
Tom Deakin
435a104f6e
Check input array size is positive
2021-01-12 15:30:41 +00:00
Tom Deakin
903eb40d19
Add parseInt function for parsing CLI arguments for array size
2021-01-12 10:28:01 +00:00
Tom Deakin
15001000c5
use signed int for array size in RAJA
2021-01-12 10:25:45 +00:00