1
0
mirror of https://github.com/paboyle/Grid.git synced 2024-11-09 23:45:36 +00:00
Commit Graph

7068 Commits

Author SHA1 Message Date
Christopher Kelly
e82cf1d311 Further prec-change improvements
Mixed prec CG algorithm has been modified to precompute precision change workspaces

As the original Test_dwf_mixedcg_prec has been coopted to do a performance stability and reproducibility test, requiring the single-prec CG to be run 200 times, I have created a new version of Test_dwf_mixedcg_prec in the solver subdirectory that just does the mixed vs double CG test
2023-02-23 09:45:29 -05:00
Christopher Kelly
1db58a8acc Precision change improvements
Added a new, much faster implementation of precision change that uses (optionally) a precomputed workspace containing pointer offsets that is device resident, such that all lattice copying occurs only on the device and no host<->device transfer is required, other than the pointer table. It also avoids the need to unpack and repack the fields using explicit lane copying. When this new precisionChange is called without a workspace, one will be computed on-the-fly; however it is still considerably faster than the original implementation.

In the special case of using double2 and when the Grids are the same, calls to the new precisionChange will automatically use precisionChangeFast, such that there is a single API call for all precision changes.

Reliable update and mixed-prec multishift have been modified to precompute precision change workspaces

Renamed the original precisionChange as precisionChangeOrig

Fixed incorrect pointer offset bug in copyLane

Added a test and a benchmark for precisionChange

Added a test for reliable update CG
2023-02-21 10:52:42 -05:00
Peter Boyle
472ed2dd5c Merge branch 'feature/dirichlet' of https://github.com/paboyle/Grid into feature/dirichlet 2022-12-17 20:17:09 -05:00
Peter Boyle
4f85672674 Simpler test for PETSc 2022-12-17 20:16:11 -05:00
Peter Boyle
140684d706 Head to head vs HMC 2022-12-13 08:15:38 -05:00
Peter Boyle
5bb7ba92fa Test for DDHMC force term 2022-12-13 08:15:11 -05:00
Peter Boyle
b54d0f3c73 Smaller deltaH down to 7000s on t=0.5 trajectory 2022-12-13 08:14:27 -05:00
Peter Boyle
ff6777a98d Variable depth experiments 2022-12-13 08:13:51 -05:00
Peter Boyle
67f569354e Partial dirichlet changes 2022-11-30 15:51:13 -05:00
Peter Boyle
5fa573dfd3 partial send fix 2022-11-25 00:51:04 -05:00
Peter Boyle
f6402cb6c4 AUDIT removal 2022-11-25 00:50:33 -05:00
Peter Boyle
bae6c263dc Audit 2022-11-25 00:47:01 -05:00
Peter Boyle
d71672dca9 Bug fix 2022-11-25 00:46:35 -05:00
Peter Boyle
121c9e2ceb Tracing 2022-11-25 00:45:21 -05:00
Peter Boyle
63a30ae34f Tracing 2022-11-25 00:45:05 -05:00
Peter Boyle
7d8231ba32 Tracing 2022-11-25 00:44:57 -05:00
Peter Boyle
b690b1cbe9 Audit 2022-11-25 00:43:57 -05:00
Peter Boyle
c0fb20fc03 Audit check for wrongly locked data 2022-11-25 00:43:12 -05:00
Peter Boyle
bc9579dac6 Old code path removed 2022-11-25 00:40:45 -05:00
Peter Boyle
a5c77f8b95 Tracing moved in order 2022-11-25 00:40:27 -05:00
Peter Boyle
3dbfce5223 Tests clean build on HIP 2022-11-16 20:15:51 -05:00
Peter Boyle
e51eaedc56 Making tests compile 2022-11-15 22:58:30 -05:00
Peter Boyle
e2a938e7f7 GPU happy for compile...? 2022-11-15 17:48:18 -05:00
Peter Boyle
ddad25211b Extra instantiations 2022-11-15 17:47:52 -05:00
Peter Boyle
6209120de9 Fix to GPU compile attempt 2022-11-15 17:25:58 -05:00
Peter Boyle
fe6e8f5ac6 Benchmark_comms fix 2022-11-15 17:00:49 -05:00
Peter Boyle
ee84dcb400 Merge branch 'feature/dirichlet' of https://github.com/paboyle/Grid into feature/dirichlet 2022-11-15 16:41:55 -05:00
Peter Boyle
0ae0e5f436 Partial Dirichlet test 2022-11-15 16:40:38 -05:00
Peter Boyle
e047616571 Multilevel integrator test 2022-11-15 16:39:39 -05:00
Peter Boyle
1af7572c61 Some test HMCs for DDHMC 2022-11-15 16:38:51 -05:00
Peter Boyle
653039695b Partial dirichlet changes 2022-11-15 16:37:15 -05:00
Peter Boyle
ca62abd203 Record some perturbative free field calculation 2022-11-15 16:36:46 -05:00
Peter Boyle
e74666a09c Double length vector type for fast precision change 2022-11-15 16:34:21 -05:00
Peter Boyle
45a001e078 Debug compile 2022-11-15 16:27:20 -05:00
Peter Boyle
0352da34f0 Several deleted files 2022-11-15 16:26:49 -05:00
Peter Boyle
7d302a525d Natural place for this routine is here 2022-11-15 16:24:55 -05:00
Peter Boyle
e2e269e03b Partial dirichlet BCs 2022-11-15 16:24:26 -05:00
Peter Boyle
0db4f1803f Partial dirichlet support 2022-11-15 16:23:41 -05:00
Peter Boyle
5fe480d81c Generic patch 2022-11-15 16:21:45 -05:00
Peter Boyle
0566fc6267 Partial Dirichlet 2022-11-15 16:21:24 -05:00
Peter Boyle
a11c12e2e7 Modifications for partial dirichlet BCs 2022-11-15 16:20:01 -05:00
Peter Boyle
006268f556 DWF Slow version 2022-11-02 20:24:51 -04:00
Peter Boyle
78acae9b50 Simple DWF for easy check 2022-11-02 20:24:17 -04:00
Peter Boyle
a3927a8a27 Dirichlet 2022-11-02 20:22:27 -04:00
Peter Boyle
d9dd9a5b5f LLVM update 2022-11-02 19:51:50 -04:00
Peter Boyle
eae1c02111 Bounds check 2022-11-02 19:50:32 -04:00
Peter Boyle
132d841b05 Compile fix 2022-11-02 19:33:22 -04:00
Peter Boyle
2e8c3b0ddb Slow implementation of Shamir DWF 2022-10-18 18:10:01 -04:00
Peter Boyle
991667ba5e Revert 2022-10-13 18:50:35 -04:00
Peter Boyle
8a07b52009 Dirichlet 2022-10-13 18:44:47 -04:00