Commit Graph
100 Commits
Author SHA1 Message Date
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
Peter Boyle 9e15474999 Accelerator loop attempt at speed up 2019-12-14 05:28:16 -05:00
Peter Boyle 152b525a4d Typo fix 2019-12-13 22:44:42 -05:00
Peter Boyle d18994eddc offload more of mgrid to GPU 2019-12-13 22:08:11 -05:00
Peter Boyle b8bd8cd2ae Merge branch 'develop' of https://github.com/paboyle/Grid into develop 2019-12-13 21:32:10 -05:00
Peter Boyle 736b19485e Faster set up and some dead code ifdef'ed out 2019-12-13 21:30:48 -05:00
Peter Boyle 5bfd1470ad Merge branch 'develop' into feature/hdcr 2019-12-10 21:51:06 -05:00
Peter Boyle 6957b0b58a Merge branch 'develop' of https://github.com/paboyle/Grid into develop 2019-12-10 21:50:42 -05:00
Peter Boyle d73f0b8618 Verbose for temporary debug 2019-12-10 21:50:06 -05:00
Peter Boyle 0b3a3562c3 Some MPI (summit) create sigusr2, so trap that 2019-12-10 21:49:12 -05:00
Peter Boyle 710fee5d26 Subspace setup testing code
and timing verbose
2019-12-10 21:48:42 -05:00
Peter Boyle bab0bf2e93 Merge branch 'develop' into feature/hdcr 2019-12-10 21:47:41 -05:00
Peter Boyle f2a4f13111 Must offload the Coarsened matrix if Stencil buffers are device resident 2019-12-10 19:32:12 -05:00
Peter Boyle edd1c924eb Merge branch 'develop' of https://github.com/paboyle/Grid into develop 2019-12-09 03:53:01 -05:00
Peter Boyle 9b6b0caa55 Junk commit fix 2019-12-09 03:01:58 -05:00
Peter Boyle 2a48617ac5 Merge branch 'develop' of https://github.com/paboyle/Grid into develop 2019-12-09 03:00:00 -05:00
Peter Boyle 876d9c957c QMR 2019-12-09 02:59:49 -05:00
Peter Boyle 295e535f93 QMR 2019-12-09 02:59:35 -05:00
Peter Boyle 58a31f0763 QMR implemented, preserve even if not used much 2019-12-09 02:59:13 -05:00
Peter Boyle 3d2fe80780 Temporary size depends on checkerboard/uncheckerboard. The Mdir cares 2019-12-09 02:58:24 -05:00
Peter Boyle e43fce1083 Clean up and simplify a little. 2019-12-09 02:55:45 -05:00
Peter Boyle 0dfdf80407 Logging 2019-12-09 02:54:52 -05:00
Peter Boyle 2912071f83 Add non hermitian operator 2019-12-09 02:51:53 -05:00
Peter Boyle 26605ef387 HDCR back to working 2019-12-09 02:51:01 -05:00
Peter Boyle 997790ad24 Allow subspace setup to no converge 2019-11-26 14:04:28 -05:00
Peter Boyle 900d6fad21 fp16 mandatory. Use SFW is not available as hdw 2019-11-26 13:26:43 -05:00
Peter Boyle d1a89af8c9 Change to reporting 2019-11-22 10:49:10 -05:00
Peter Boyle d91ba1f6cc NVCC timer support 2019-11-21 20:11:19 +00:00
Peter Boyle f4d27e7090 Merge branch 'develop' of https://github.com/paboyle/Grid into develop 2019-11-21 20:09:31 +00:00
Peter Boyle feb1ff3494 Fix nocompilee under NVCC 2019-11-21 20:03:39 +00:00
Peter Boyle 8ef6175acc Merge branch 'develop' of https://github.com/paboyle/Grid into develop 2019-11-21 15:02:21 -05:00
Peter Boyle e4399e3ee1 --enable-summit flag 2019-11-21 15:02:10 -05:00
Peter Boyle 98ea67b636 IBM summit optimisation. Synchronise in node is still btweeen 2 halves of AC922, so could
be a little faster
2019-11-21 15:00:46 -05:00
Peter Boyle ac614cbc53 Merge branch 'develop' of https://github.com/paboyle/Grid into develop 2019-10-31 11:46:43 -04:00
Peter Boyle ec8e060ec7 Summit jsrun GPU mapping updates. Conffigure with --enable-jsrun 2019-10-31 11:46:09 -04:00
Peter Boyle b473405652 Tensor ambiguous fix 2019-08-29 09:36:41 -05:00
Peter Boyle 9b7a6d197f Fix for GCC preprocessor/pragma handling bug 2019-08-23 14:37:46 +01:00
Peter Boyle 59cd7f3b70 Trips up NVCC for reasons I dont understand on summit 2019-08-23 06:03:49 -04:00
Peter Boyle 28d6be2a4e Fix GCC complaint 2019-08-22 18:56:37 +01:00
Peter Boyle 95f66cc93c Merge branch 'feature/gpu-port' into develop 2019-08-15 02:19:31 +01:00
Peter Boyle 12eb2a6a34 Zero() change 2019-08-15 01:43:00 +01:00
Peter Boyle 7c8902b04f Merge branch 'develop' into feature/gpu-port 2019-08-15 01:33:07 +01:00