paboyle
|
8287ed8383
|
New GPU vector targets
|
2018-06-13 20:21:35 +01:00 |
|
paboyle
|
e6be7416f4
|
Use managed memory
|
2018-06-13 20:14:00 +01:00 |
|
paboyle
|
26863b6d95
|
User Managed memory
|
2018-06-13 20:13:42 +01:00 |
|
paboyle
|
ebd730bd54
|
Adding 2D loops
|
2018-06-13 20:13:01 +01:00 |
|
paboyle
|
066be31a3b
|
Optional GPU target SIMD types; work in progress and trying experiments
|
2018-06-13 20:07:55 +01:00 |
|
paboyle
|
7a4c142955
|
Add GPU specific simd targets
|
2018-06-13 19:55:30 +01:00 |
|
Peter Boyle
|
eb7d34a4cc
|
GPU version
|
2018-05-14 19:41:47 -04:00 |
|
Peter Boyle
|
aab27a655a
|
Start of GPU kernels
|
2018-05-14 19:41:17 -04:00 |
|
Peter Boyle
|
93280bae85
|
Gpu option
|
2018-05-14 19:40:58 -04:00 |
|
Peter Boyle
|
c5f93abcd7
|
GPU clean up
|
2018-05-14 19:40:33 -04:00 |
|
Peter Boyle
|
d5deef782d
|
Useful debug comments
|
2018-05-14 19:39:52 -04:00 |
|
Peter Boyle
|
5f50473c0d
|
Clean up
|
2018-05-14 19:39:11 -04:00 |
|
Peter Boyle
|
13f50406e3
|
Suppress print statement
|
2018-05-12 18:00:00 -04:00 |
|
Peter Boyle
|
09cd46d337
|
Lane by Lane operation
|
2018-05-12 17:59:35 -04:00 |
|
Peter Boyle
|
d3f51065c2
|
Give command line control of blocks/threads split
|
2018-05-12 17:58:56 -04:00 |
|
Peter Boyle
|
925ac4173d
|
Thread count control for warp scheduler thingy doodaa thing
|
2018-05-12 17:58:22 -04:00 |
|
Peter Boyle
|
eb921041d0
|
Perf count control
|
2018-05-12 17:57:32 -04:00 |
|
Peter Boyle
|
87c5c0271b
|
Ficxing eigen
|
2018-04-16 19:08:07 -04:00 |
|
Peter Boyle
|
a3f5a13591
|
Better Eigen handling
|
2018-04-16 18:02:55 -04:00 |
|
Peter Boyle
|
9fe28f00eb
|
Eigen sim link off head revision
|
2018-04-16 17:54:46 -04:00 |
|
Peter Boyle
|
a8a0bb85cc
|
Control scalar execution or vector under generic. Disable Eigen vectorisation on powerpc / SUmmit
|
2018-04-12 12:32:57 -04:00 |
|
Peter Boyle
|
6411caad67
|
work distribution
|
2018-04-12 11:41:41 -04:00 |
|
Peter Boyle
|
7533035a99
|
Control Eigen vectorisatoin
|
2018-04-12 11:40:56 -04:00 |
|
Peter Boyle
|
b15db11c60
|
Kernels -> pure static object to enable device execution
|
2018-03-24 19:35:20 -04:00 |
|
Peter Boyle
|
f6077f9d48
|
Kernels -> not instantiaed otherwise object ref on GPU
|
2018-03-24 19:33:44 -04:00 |
|
Peter Boyle
|
572954ef12
|
Kernels not an instantiated object, just static
|
2018-03-24 19:33:13 -04:00 |
|
Peter Boyle
|
cedeaae7db
|
Lebesge -> StencilView if necessary
|
2018-03-24 19:32:41 -04:00 |
|
Peter Boyle
|
e6cf0b1e17
|
View typedefs go to OperatorImpl
|
2018-03-24 19:32:11 -04:00 |
|
Peter Boyle
|
5412628ea6
|
begin end lamda
|
2018-03-24 19:31:45 -04:00 |
|
Peter Boyle
|
1f70cedbab
|
Have to make all kernel called routines static since object reference will be a host pointer on GPU
|
2018-03-24 19:29:26 -04:00 |
|
Peter Boyle
|
b50f37cfb4
|
Remove overlap comms flag
|
2018-03-24 19:28:53 -04:00 |
|
Peter Boyle
|
cb0d2a1b03
|
threaded rng init; I thought this was on
|
2018-03-24 19:28:17 -04:00 |
|
Peter Boyle
|
6fe9b28a82
|
Cosmetic
|
2018-03-24 19:27:14 -04:00 |
|
Peter Boyle
|
b002587d7c
|
Simplify
|
2018-03-24 19:26:44 -04:00 |
|
Peter Boyle
|
6c08385782
|
Simplify
|
2018-03-24 19:26:19 -04:00 |
|
Peter Boyle
|
4e1272fabf
|
Kernels need to be static to work on GPU. No reference to host resident data
|
2018-03-22 18:44:53 -04:00 |
|
Peter Boyle
|
607dc2d3c6
|
Remove lebesgue order
|
2018-03-22 18:23:09 -04:00 |
|
Peter Boyle
|
23c880b009
|
Remove lebesgue order; stick in stencil if need
|
2018-03-22 18:13:41 -04:00 |
|
Peter Boyle
|
334bb6792f
|
Lebesgue order removed. Stick in the stencil view
|
2018-03-22 18:12:12 -04:00 |
|
Peter Boyle
|
a3690071b4
|
Warm up GPu
|
2018-03-22 18:05:20 -04:00 |
|
Peter Boyle
|
299d119013
|
GPU work allocation improved
|
2018-03-22 18:04:24 -04:00 |
|
Peter Boyle
|
55be842d23
|
Dont force l1p.h so early
|
2018-03-22 18:01:43 -04:00 |
|
Peter Boyle
|
9875c446c6
|
Clean up pragmas
|
2018-03-20 07:19:17 -04:00 |
|
Peter Boyle
|
9c25eb35ca
|
Eigen develop branch for now
|
2018-03-20 07:18:56 -04:00 |
|
Peter Boyle
|
5ac96dbdc6
|
Warm behaviour in SU3 benchmark
|
2018-03-20 07:18:31 -04:00 |
|
Peter Boyle
|
5cc9aca85d
|
Use 64bit index for looping
|
2018-03-20 06:34:52 -04:00 |
|
Peter Boyle
|
ac29ebcb95
|
Clean up debug prints
|
2018-03-20 06:33:59 -04:00 |
|
Peter Boyle
|
a5cfb89304
|
Update eigen process direct from develop on github. Dangerous, but needed from GPU
|
2018-03-19 07:20:48 -04:00 |
|
Peter Boyle
|
f04a7251cc
|
Gpu welcome message and device info
|
2018-03-19 07:12:12 -04:00 |
|
Peter Boyle
|
d4ce7d9905
|
GPU friendly Stencil needs a view
|
2018-03-19 07:11:21 -04:00 |
|
Peter Boyle
|
8a1d303ab9
|
GPU friendly stencil improvements
|
2018-03-19 07:11:03 -04:00 |
|
Peter Boyle
|
bf0a4de919
|
GPU friendly params object
|
2018-03-19 07:10:12 -04:00 |
|
Peter Boyle
|
6fe5885fe4
|
Warning suppress
|
2018-03-19 07:09:49 -04:00 |
|
Peter Boyle
|
17ac309e84
|
Fix the compile
|
2018-03-19 07:08:59 -04:00 |
|
Peter Boyle
|
7467a1c027
|
Latest eigen needed for GPU
|
2018-03-19 07:08:10 -04:00 |
|
Peter Boyle
|
fdfb8a26a8
|
Disable eigen vectorisation on GPU because of Summit compile issues
|
2018-03-19 07:07:30 -04:00 |
|
paboyle
|
2df4e422ad
|
Merge branch 'feature/gpu-port' of https://github.com/paboyle/Grid into feature/gpu-port
|
2018-03-18 14:45:41 +00:00 |
|
paboyle
|
3a3e3cac40
|
Pull the trigger on offload
|
2018-03-18 14:45:29 +00:00 |
|
paboyle
|
b1c02ec310
|
MallocManaged in GPU
|
2018-03-18 14:44:46 +00:00 |
|
paboyle
|
38eadee2c9
|
Prettier code
|
2018-03-18 14:44:22 +00:00 |
|
paboyle
|
42c70437be
|
Views
|
2018-03-18 14:43:47 +00:00 |
|
paboyle
|
65274b4d7f
|
Tidy up
|
2018-03-18 14:43:16 +00:00 |
|
Peter Boyle
|
7e8be32755
|
Typo fix
|
2018-03-13 19:22:31 -04:00 |
|
paboyle
|
ff761ea4e6
|
Bound check improvement
|
2018-03-09 20:00:46 +00:00 |
|
paboyle
|
a31d3e60d8
|
Better bounds check
|
2018-03-09 18:10:21 +00:00 |
|
paboyle
|
4d60b92b7f
|
Update oSites
|
2018-03-08 21:00:25 +00:00 |
|
paboyle
|
c159c70c84
|
View introduced
|
2018-03-08 14:58:04 +00:00 |
|
paboyle
|
28b5572755
|
Merge branch 'feature/gpu-port' of https://github.com/paboyle/Grid into feature/gpu-port
|
2018-03-08 13:01:42 +00:00 |
|
paboyle
|
5fac7080bc
|
Adding -fno-strict-aliasing by default
|
2018-03-08 13:01:24 +00:00 |
|
Peter Boyle
|
4548523ecc
|
This modification eliminates what looks like a compiler bug
on Intel 2017.
|
2018-03-08 04:41:16 -08:00 |
|
paboyle
|
4154fc6f44
|
Revert a change
|
2018-03-07 16:54:11 +00:00 |
|
paboyle
|
4e3458516a
|
Reverting after fixing issue with extract merge
|
2018-03-07 16:50:13 +00:00 |
|
Peter Boyle
|
90a2efb9b3
|
Hit an annoying strict alias optimisation in GCC 4.9 through 6.3
Chris K was correct. It appears that an additional memcpy (UGHHH) is enough
to suppress the compiler
|
2018-03-07 07:27:26 -08:00 |
|
paboyle
|
40699221e2
|
Dont alias lhs and rhs in a where statement
|
2018-03-06 04:14:13 -08:00 |
|
paboyle
|
3cb1b545d0
|
Don't alias the variables with a where statement.
|
2018-03-06 04:13:26 -08:00 |
|
paboyle
|
e199ba7e88
|
Fix the Charge conjugate BC's
|
2018-03-05 13:59:02 +00:00 |
|
paboyle
|
4d53703c67
|
Scalar type differeing allowed, eg. precisoin change
|
2018-03-05 11:39:52 +00:00 |
|
paboyle
|
d506c59efa
|
Warnings disabled
|
2018-03-05 11:39:20 +00:00 |
|
paboyle
|
44188a5c6f
|
AVX512 fix
|
2018-03-05 00:32:24 +00:00 |
|
paboyle
|
2018077770
|
Make NVCC happy with the compile. This is warning free on 9.1 on my laptop (both make and make tests).
|
2018-03-05 00:28:24 +00:00 |
|
paboyle
|
984e06e2b5
|
Introduce view objects that can safely be copied to GPU for access
|
2018-03-04 16:40:11 +00:00 |
|
paboyle
|
aead94e9a7
|
View introduced
|
2018-03-04 16:39:29 +00:00 |
|
paboyle
|
3277bda130
|
View introduction to prepare for accelerator offload.
Probably same problem exists for stencil object
|
2018-03-04 16:38:08 +00:00 |
|
paboyle
|
442b0b406c
|
View related changes
|
2018-03-04 16:34:14 +00:00 |
|
paboyle
|
8824a54269
|
View related changes
|
2018-03-04 16:33:33 +00:00 |
|
paboyle
|
c03423250f
|
Indexable changes
|
2018-03-04 16:31:35 +00:00 |
|
paboyle
|
317fd0da44
|
Views introduced. Need to accelerator offload these routines.
|
2018-03-04 16:30:45 +00:00 |
|
paboyle
|
783795a44a
|
Views introduced
|
2018-03-04 16:12:49 +00:00 |
|
paboyle
|
0e6197fbed
|
Introduce accelerator friendly expression template rewrite.
Must obtain and access lattice indexing through a view object that is safe
to copy construct in copy to GPU (without copying the lattice).
|
2018-03-04 16:03:19 +00:00 |
|
paboyle
|
dad7862f91
|
Go through a view object that can be copied to GPU
|
2018-03-04 16:02:02 +00:00 |
|
paboyle
|
c89a883448
|
where was deprecated and integrated to ET engine a long time ago. Remove dead old original code
|
2018-03-04 15:58:02 +00:00 |
|
paboyle
|
c204288fbc
|
Remove a couple of print statements
|
2018-03-04 15:57:15 +00:00 |
|
paboyle
|
ad739f042a
|
Introduce views for passing lattice indexing to accelerators.
|
2018-03-04 15:56:14 +00:00 |
|
paboyle
|
db988301d0
|
Introduce view objects for indexing lattices. Used to pass the view to acccelerators
|
2018-03-04 15:55:16 +00:00 |
|
paboyle
|
9b1f29c4c2
|
Support a view for passing to accelerator
|
2018-03-04 15:54:35 +00:00 |
|
paboyle
|
e5ea04ee0c
|
Need to support precision change, and real replication in multiple simd lanes
|
2018-03-04 15:53:04 +00:00 |
|
paboyle
|
c92a3c6068
|
Need to support any vector type template and run on accelerator
|
2018-03-04 15:52:14 +00:00 |
|
paboyle
|
03f8da8fbc
|
enable-debug option for debug flags in compile
|
2018-03-04 15:51:47 +00:00 |
|
paboyle
|
78a9e31ff0
|
options more obvious
|
2018-02-24 22:26:32 +00:00 |
|
paboyle
|
c1fc947bb8
|
Coordinate handling GPU friendly + some GPU merge/extract improvements
|
2018-02-24 22:26:10 +00:00 |
|