Commit Graph
100 Commits
Author SHA1 Message Date
Peter Boyle 5a73ef3647 Minor tweak to compile 2020-06-05 21:50:15 -04:00
Peter Boyle 14fcd0912a Merge branch 'sycl' of https://github.com/paboyle/Grid into sycl 2020-06-05 19:14:17 -04:00
Peter Boyle 3111c0bd4f Single precisiono hardwire 2020-06-05 19:13:27 -04:00
Peter Boyle e03064490e Merge branch 'sycl' of https://github.com/paboyle/Grid into sycl 2020-06-05 18:53:39 -04:00
Peter Boyle 1a4c8c3387 Global edit with change to View usage. autoView() creates a wrapper object that closes the view when scope closes. 2020-06-05 18:52:35 -04:00
Peter Boyle 2b1e259441 Decode of SYCL devices fix 2020-06-04 17:16:55 -07:00
Peter Boyle f39c2a240b Priintinig and device memory size detection 2020-06-04 14:58:03 -04:00
Peter Boyle 0d95805cde Print improvement 2020-06-03 22:50:32 -04:00
Peter Boyle f67830587f Accelerator loop use 2020-06-03 22:50:09 -04:00
Peter Boyle 6bf7f839ff Better printing and logging 2020-06-03 09:28:57 -04:00
Peter Boyle e3147881a9 Cache scheme 2020-06-03 09:23:48 -04:00
Peter Boyle fb559614ad Initialise meemory manager 2020-06-03 09:12:47 -04:00
Peter Boyle e93e12b6a4 More verbose SYCL setup 2020-06-03 09:12:11 -04:00
Peter Boyle 0c3112cd94 Use view mechanism 2020-06-03 09:11:51 -04:00
Peter Boyle 8cfd5d2639 Need lattice view 2020-06-03 09:11:28 -04:00
Peter Boyle 1c9f20b15e Views must be closed 2020-06-03 09:10:29 -04:00
Peter Boyle 32237895bd Reorg memory manager for O(1) hash table 2020-06-03 09:09:52 -04:00
Peter Boyle 1d252d0922 Accelerator inline 2020-05-28 11:45:25 -04:00
Peter Boyle 006cc8a8f1 Staggereed move to accelerator 2020-05-28 08:33:06 -04:00
Peter Boyle cf2938688a Sycl unhappy fix 2020-05-25 08:36:53 -07:00
Peter Boyle ee63721bad int unhappiness sycl fix 2020-05-25 08:36:24 -07:00
Peter Boyle 22c5168d70 Sycl happier 2020-05-25 08:35:56 -07:00
Peter Boyle 949ac3cd24 Must avoid non-trivial copy constructors 2020-05-25 08:35:28 -07:00
Peter Boyle 7bc0166c1c SYCLL maknig happy - must avoid non ttrivial copy constructors 2020-05-25 08:34:19 -07:00
Peter Boyle cb0d1b3399 hopefullly fix buildd fail 2020-05-24 21:27:00 -04:00
Peter Boyle d1f1ccc705 HIP changes 2020-05-24 21:18:49 -04:00
Peter Boyle c7519a237a Assertions fail on HIP foor unknown reasons - dedbugging 2020-05-24 14:02:47 -04:00
Peter Boyle 32be2b13d3 Updates for HiP 2020-05-24 14:00:55 -04:00
Peter Boyle 92b342a477 Hip reduction too 2020-05-24 13:50:28 -04:00
Peter Boyle 556da86ac3 HIP fp16 2020-05-24 13:41:58 -04:00
Peter Boyle 8285e41574 View location / access mode 2020-05-21 16:14:41 -04:00
Peter Boyle f999408e92 View locatoin and access mode 2020-05-21 16:14:20 -04:00
Peter Boyle a7abda89e2 View location & access mode 2020-05-21 16:13:59 -04:00
Peter Boyle 7860a50f70 Make view specify where and drive data motion - first cut.
This is a compile tiime option --enable-unified=yes/no
2020-05-21 16:13:16 -04:00
Peter Boyle ebb60330c9 Automatic data motion options beginning 2020-05-17 16:34:25 -04:00
Peter Boyle a9847aa866 Dependence fix 2020-05-12 20:03:37 -04:00
Peter Boyle d24d8e8398 Use X-direction as more bits meaningful on CUDA.
2^31-1 shoulddd always bee enough for SIMD and thread reduced local volume

e.g. 32*2^31 = 2^36 = (2^9)^4 or 512^4 ias big enough.

Where 32 is gpu_threads * Nsimd = 8*4
2020-05-12 10:35:49 -04:00
Peter Boyle 07c0c02f8c Speed up Cshift 2020-05-11 17:02:01 -04:00
Peter Boyle 8c31c065b5 Keep the Vector fixed to protect it from realloc 2020-05-11 17:00:30 -04:00
Peter Boyle bbbee5660d First compiile on HiP 2020-05-10 05:28:09 -04:00
Peter Boyle 52081acfa5 NVCC compile fixes 2020-05-08 13:14:12 -04:00
Peter Boyle f8b8e00090 Systematise the accelerator primitives and locate to Grid/threads/Accelerator.h / Accelerator.cc
Aim to reduce the amount of cuda and other code variations floating around all over the place.

Will move GpuInit iinto Accelerator.cc from Init.cc
Need to worry about SharedMemoryMPI.cc and the Peer2Peer windows
2020-05-08 06:23:55 -07:00
Peter Boyle 28a1fcaaff First compile against SYCL 2020-05-05 11:13:27 -07:00
Peter Boyle 9b2d2d0fc3 Basis rotate stack passig to GPU reduction 2020-04-30 12:31:07 -04:00
Peter Boyle 5011753f4f Clean up warning 2020-04-30 10:23:48 -04:00
Peter Boyle dd3ebc2ce4 Slow compile on NVCC switch off conserved current 2020-04-29 08:43:12 -04:00
Peter Boyle 103e7ae2f0 Merge branch 'develop' of https://github.com/paboyle/Grid into develop 2020-04-29 03:05:36 -04:00
Peter Boyle 29ae5615c0 Seqeuential fix 2020-04-29 03:05:15 -04:00
Peter Boyle c2c3cad20d Merge branch 'develop' of https://github.com/paboyle/Grid into develop 2020-04-23 04:35:42 -04:00
Peter Boyle edec9ee2e2 Conserved current rewrite done. Zmobius working 2020-04-23 04:34:01 -04:00
Peter Boyle ed70cce542 Test for 5D DWF obserevables 2020-04-23 04:29:45 -04:00
Peter Boyle f3a8d039a2 Merge branch 'feature/hdcr' into develop 2020-04-10 22:01:52 -04:00
Peter Boyle 014dbfa464 Compile fix with OpDirAll 2020-04-10 11:57:09 -04:00
Peter Boyle 3b0e07882f Adding another form of polynomial 2020-04-10 11:28:33 -04:00
Peter Boyle 8e81a811d0 Merge branch 'feature/hdcr' into develop 2020-04-10 11:14:49 -04:00
Peter Boyle aa13118127 Missing conjugate already fixed in develop 2020-04-10 11:11:24 -04:00
Peter Boyle 6cdb09c884 Faster copy region 2020-04-10 11:10:52 -04:00
Peter Boyle a65bc64f10 Accelerator peek poke 2020-04-10 11:09:59 -04:00
Peter Boyle 11dec4883c Don't throw assert 2020-04-10 11:09:11 -04:00
Peter Boyle afa458c812 Extra solvers 2020-04-10 11:08:19 -04:00
Peter Boyle dc50190b8f Faster GPU basis rotation
May need to later include Regensburg optimised CPU variant
2020-04-10 11:06:04 -04:00
Peter Boyle 8a5c13d5fb Still fast moving in changes 2020-02-06 17:57:26 -05:00
Peter Boyle bdccb0c91f Working 2 types of decomposition 2020-02-06 17:26:55 -05:00
Peter Boyle 68b45f6444 Lower left/upper right region cut paste 2020-02-06 15:50:26 -05:00
Peter Boyle ef9b3e658a extra typedef 2020-02-06 15:47:14 -05:00
Peter Boyle b9ca40cc44 More precise power method at start 2020-02-06 10:09:14 -05:00
Peter Boyle 2f421a5db1 Commeent fix 2020-02-06 10:08:27 -05:00
Peter Boyle 852fc1b001 True Hierachical multigrid for DWF 2020-01-27 13:45:10 -05:00
Peter Boyle 2b5de5bba5 MdagM operator without norm option 2020-01-27 13:44:30 -05:00
Peter Boyle 2e85cae74e Add Jacobi polynomials 2020-01-27 13:43:49 -05:00
Peter Boyle 76c823781e Much faster coarsening 2020-01-27 13:43:19 -05:00
Peter Boyle 114db3b99d Optional MdagM without norms 2020-01-27 13:42:51 -05:00
Peter Boyle 49e123dbda Use explicit linalg calls to get coalesce optimisations on GPU 2020-01-27 12:44:51 -05:00
Peter Boyle 8cec294ec9 Make CG a bit less verbose as gettign annoying in nested algorithms.
Can use Iterative logging if you want to see more
2020-01-27 12:44:04 -05:00
Peter Boyle eb5b720e94 Normal Equations can be used in HDCR now 2020-01-27 12:43:29 -05:00
Peter Boyle b2736ec80b Make PrecGCR recursive - it can precondition itself 2020-01-27 12:42:48 -05:00
Peter Boyle 086256a032 Less sloppy convergence test on PowerMethod 2020-01-27 12:41:59 -05:00
Peter Boyle afc7426f39 Much bigger pointer cache in case of Nvidia due to cost of setting up UVM allocations 2020-01-27 12:41:16 -05:00
Peter Boyle 7c061e20c9 All directions of dirac operator for fastt coarsening 2020-01-27 12:40:13 -05:00
Peter Boyle e5d1c09665 Faster DhopDirAll for little dirac operator coarsening 2020-01-27 12:38:54 -05:00
Peter Boyle 8016a465ae Remove extraneous variable 2020-01-27 12:35:37 -05:00
Peter Boyle d8b9742092 DhopDirAll for faster matrix elements of little Dirac operator 2020-01-27 12:34:54 -05:00
Peter Boyle 1bd87c35d7 Read coalescing on Nvidia 2020-01-27 12:29:56 -05:00
Peter Boyle fa856c9669 Disable information message 2020-01-27 12:28:46 -05:00
Peter Boyle 48008e4d8b Thread coordinate creation loop 2020-01-27 12:28:16 -05:00
Peter Boyle 55cdb17691 Integer divide for blocking 2020-01-27 12:27:45 -05:00
Peter Boyle 554542b773 Merge branch 'feature/hdcr' of https://github.com/paboyle/Grid into feature/hdcr 2020-01-06 11:47:56 -05:00
Peter Boyle 03da4040e2 Make summit happy 2020-01-06 11:47:48 -05:00
Peter Boyle e583035614 Change to interface to minise comms in evaluating coarse space operator 2020-01-06 11:43:59 -05:00
Peter Boyle 3c3d6a94f3 OPtimising the force term a bit 2020-01-04 03:16:23 -05:00
Peter Boyle 205ea4bbb2 More verboose Lanczos 2020-01-04 03:13:40 -05:00
Peter Boyle 039eb7b2eb Make the force term and coarsening multigrid more optimised 2020-01-04 03:12:17 -05:00
Peter Boyle f7e4bd1f6d Getting more optimised 2020-01-04 03:11:53 -05:00
Peter Boyle 0afecfcae7 Nearing well optimised state 2020-01-04 03:11:19 -05:00
Peter Boyle ba40a3f763 Alternate low pass filter option 2020-01-03 05:29:09 -05:00
Peter Boyle aa920aa532 Improved DWF multigrid 2019-12-28 10:32:35 -05:00
Peter Boyle c0d8e4dce5 Improved Multigrid for DWF 2019-12-28 10:32:15 -05:00
Peter Boyle 9cfd64c604 Coarse grid on GPU, not fast enough yet. Need a 10x 2019-12-17 05:24:45 -05:00
Peter Boyle e478404291 Tuned up significantly on GPU, but another 10x in coarse space required 2019-12-17 05:03:25 -05:00
Peter Boyle 9aafd20468 Simple block project promote runs faster on GPU 2019-12-17 05:01:39 -05:00