Commit Graph

  • 4df1e0987f Merge branch 'feature/dirichlet-gparity' of https://github.com/paboyle/Grid into feature/dirichlet-gparity Peter Boyle 2022-07-01 09:55:43 -04:00
  • 588c2f3cb1 Faster axpy_norm and innerProduct Peter Boyle 2022-07-01 09:44:58 -04:00
  • bd99fd608c Introduce a non-default stream for compute operatoins Peter Boyle 2022-07-01 09:42:53 -04:00
  • 57b442d0de Log memory operations Peter Boyle 2022-07-01 09:42:17 -04:00
  • 751a4562d7 Timing improvement Peter Boyle 2022-07-01 09:41:43 -04:00
  • ca66301dee Remove debug Peter Boyle 2022-06-30 14:53:12 -04:00
  • 808bb59206 Mixed prec DD-RHMC Peter Boyle 2022-06-30 13:50:09 -04:00
  • 4b7f51d19d Create a new RNG file Peter Boyle 2022-06-30 13:49:50 -04:00
  • d03152fac4 New file under debug Peter Boyle 2022-06-30 13:49:35 -04:00
  • 137f190258 Dirichlet implementation Peter Boyle 2022-06-30 13:45:07 -04:00
  • 53d01312b3 Rough flop counting, need to add M5D, M5Ddag, MooeeInv flops Peter Boyle 2022-06-30 13:44:09 -04:00
  • 220050822a Speed up M5D and M5Ddag Peter Boyle 2022-06-30 13:43:27 -04:00
  • 87ad76d81b Initialise timeval Peter Boyle 2022-06-30 13:42:46 -04:00
  • 042ab1a052 Update GridStd.h Peter Boyle 2022-06-27 13:21:39 -04:00
  • 4ac1094856 Updated config commands Peter Boyle 2022-06-27 12:16:24 -04:00
  • d44a57b0af Allow frequency=0 to disable Peter Boyle 2022-06-27 12:15:55 -04:00
  • dc000d10ee Spelling correction Peter Boyle 2022-06-27 12:14:57 -04:00
  • 3685f391cf More verbose CG Peter Boyle 2022-06-27 12:11:08 -04:00
  • efd7338a00 Allow dirichlet at round the world link Peter Boyle 2022-06-27 12:10:27 -04:00
  • e1e7b1e224 RNG fix Peter Boyle 2022-06-27 12:09:52 -04:00
  • 7319d4e1ad Merge pull request #407 from giltirn/feature/dirichlet-gparity-stage Peter Boyle 2022-06-22 15:23:36 -04:00
  • fd933420c6 Imported changes from feature/gparity_HMC branch: Added a bounds-check function for the RHMC with arbitrary power Added a pseudofermion action for the rational ratio with an arbitrary power and a mixed-precision variant of the same. The existing one-flavor rational ratio class now uses the general class under the hood To support testing of the two-flavor even-odd ratio pseudofermion, separated the functionality of generating the random field and performing the heatbath step, and added a method to obtain the pseudofermion field Added a new HMC runner start type: CheckpointStartReseed, which reseeds the RNG from scratch, allowing for the creation of new evolution streams from an existing checkpoint. Added log output of seeds used when the RNG is seeded. EOFA changes: To support mixed-precision inversion, generalized the class to maintain a separate solver for the L and R operators in the heatbath (separate solvers are already implemented for the other stages) To support mixed-precision, the action of setting the operator shift coefficients is now maintained in a virtual function. A derived class for mixed-precision solvers ensures the coefficients are applied to both the double and single-prec operators The ||^2 of the random source is now stored by the heatbath and compared to the initial action when it is computed. These should be equal but may differ if the rational bounds are not chosen correctly, hence serving as a useful and free test Fixed calculation of M_eofa (previously incomplete and #if'd out) Added functionality to compute M_eofa^-1 to complement the calculation of M_eofa (both are equally expensive!) To support testing, separated the functionality of generating the random field and performing the heatbath step, and added a method to obtain the pseudofermion field Added a test program which computes the G-parity force using the 1 and 2 flavor implementations and compares the result. Test supports DWF, EOFA and DSDR actions, chosen by a command line option. The Mobius EOFA force test now also checks the rational approximation used for the heatbath Added a test program for the mixed precision EOFA compared to the double-prec implementation, G-parity HMC test now applied GPBC in the y direction and not the t direction (GPBC in t are no longer supported) and checkpoints after every configuration Added a test program which computes the two-flavor G-parity action (via RHMC) with both the 1 and 2 flavor implementations and checks they agree Added a test program to check the implementation of M_eofa^{-1} Christopher Kelly 2022-06-22 10:27:48 -04:00
  • 8208a6214f Merge branch 'feature/dirichlet-gparity' into feature/dirichlet Peter Boyle 2022-06-15 19:23:48 -04:00
  • 3d8146b596 Merge branch 'feature/dirichlet-gparity' of https://github.com/paboyle/Grid into feature/dirichlet-gparity Peter Boyle 2022-06-15 19:20:27 -04:00
  • 31efa5c4da Script updates for current summit Peter Boyle 2022-06-15 19:19:44 -04:00
  • d10d30dda8 Script update Peter Boyle 2022-06-15 19:18:58 -04:00
  • 0e9666bc92 Test update Peter Boyle 2022-06-15 19:18:42 -04:00
  • 6efd80f104 Printing Peter Boyle 2022-06-15 18:23:46 -04:00
  • fdef7a1a8c Dirichlet fix Peter Boyle 2022-06-15 00:05:20 -04:00
  • 501bb117bf Const correct Peter Boyle 2022-06-15 00:04:09 -04:00
  • 05ca7dc252 Const correctness Peter Boyle 2022-06-14 23:41:05 -04:00
  • e9648a1635 Useful periodic print. CG convergence bound is remarkably accurate on low eigenvalue in numerical tests Peter Boyle 2022-06-14 23:40:04 -04:00
  • 2df98a99bc Merge pull request #406 from giordano/patch-1 Peter Boyle 2022-06-14 17:46:25 -04:00
  • 315ea18be2 Update default value of gen-simd-width in README Mosè Giordano 2022-06-14 22:41:05 +01:00
  • 9a9f4a111f Merge pull request #405 from giltirn/feature/dirichlet-gparity-stage Peter Boyle 2022-06-06 18:45:37 -04:00
  • 1ad54d049d To PeriodicBC and ConjugateBC, added a new function "CshiftLink" which performs a boundary-aware C-shift of links or products of links. For the latter, the links crossing the global boundary are complex-conjugated. To the gauge implementations, added CshiftLink functions calling into the appropriate operation for the BC in a given direction. GaugeTransform, FourierAcceleratedGaugeFixer and WilsonLoops::FieldStrength no longer implicitly assume periodic boundary conditions; instead the shifted link is obtained using CshiftLink and is aware of the gauge implementation. Added an assert-check to ensure that the gauge fixing converges within the specified number of steps. Added functionality to compute the timeslice averaged plaquette Added functionality to compute the 5LI topological charge and timeslice topological charge Added a check of the properties of the charge conjugation matrix C=-gamma_2 gamma_4 to Test_gamma Fixed const correctness for Replicate Modified Test_fft_gfix to support either conjugate or periodic BCs, optionally disabling Fourier-accelerated gauge fixing, and tuning of alpha using cmdline options Christopher Kelly 2022-06-02 15:30:41 -04:00
  • 57bd0a0a22 Merge branch 'feature/dirichlet' of https://github.com/paboyle/Grid into feature/dirichlet Peter Boyle 2022-06-01 19:29:38 -04:00
  • b49db84b08 Slurm updates Peter Boyle 2022-06-01 19:27:42 -04:00
  • 583f7c52f3 SSC mark Peter Boyle 2022-06-01 19:27:29 -04:00
  • 58a86c9164 SSC mark removal Peter Boyle 2022-06-01 19:27:06 -04:00
  • a25b32847f Crusher patch Peter Boyle 2022-06-01 19:26:37 -04:00
  • 6f1a2e132b SSC mark causing problems Peter Boyle 2022-06-01 19:26:06 -04:00
  • b1ede7b46d Faster RNG init Peter Boyle 2022-06-01 19:25:42 -04:00
  • e762c940c2 Reduce the loop over exterior for GPU to indirection table Peter Boyle 2022-06-01 14:29:25 -07:00
  • 6a1a198144 Merge branch 'feature/dirichlet' of https://github.com/paboyle/Grid into feature/dirichlet Peter Boyle 2022-05-29 11:08:09 -04:00
  • 34faa39f4f Clean up Dirichlet. Big oops fix Peter Boyle 2022-05-28 17:18:08 -07:00
  • 5ddea3829d Extra easier signature for peek Peter Boyle 2022-05-28 15:52:39 -07:00
  • 7eb29cf529 MPI fix Peter Boyle 2022-05-28 15:51:34 -07:00
  • f729b9b889 Merge branch 'feature/dirichlet' of https://github.com/paboyle/Grid into feature/dirichlet Peter Boyle 2022-05-25 14:16:09 -04:00
  • 4f997c5f04 Remove extra face kernels in Dirichlet Peter Boyle 2022-05-25 11:15:25 -07:00
  • a9c2e1df03 Merge pull request #404 from rrhodgson/feature/json_nvcc Peter Boyle 2022-05-25 13:30:11 -04:00
  • d3496d2fe0 Merge pull request #397 from giltirn/feature/dirichlet-gparity-stage Peter Boyle 2022-05-25 13:29:45 -04:00
  • 60f4cb0ffd Merge branch 'feature/dirichlet' of https://github.com/paboyle/Grid into feature/dirichlet Peter Boyle 2022-05-25 12:38:10 -04:00
  • 136d843ce7 Crusher updates Peter Boyle 2022-05-25 12:36:09 -04:00
  • 18028f4309 Merge branch 'develop' into feature/dirichlet Peter Boyle 2022-05-24 18:26:18 -07:00
  • 5164016740 Merge branch 'develop' of https://github.com/paboyle/Grid into develop Peter Boyle 2022-05-24 18:25:57 -07:00
  • d83beaa890 Update perlmutter Peter Boyle 2022-05-24 18:25:00 -07:00
  • f9f05e995b Update perlmutter Peter Boyle 2022-05-24 18:24:38 -07:00
  • e651b9e7ab Clean up stencil with better intranode Dirichlet / DDHMC support. 14TF/s on a Perlmutter node Peter Boyle 2022-05-24 18:23:39 -07:00
  • 47b4e91473 Verbose change Peter Boyle 2022-05-24 18:19:18 -07:00
  • 3f31afa4fc Clean up verbose Peter Boyle 2022-05-24 18:18:51 -07:00
  • da4daea57a Updated json to latest release 3.10.5 rhodgson 2022-05-24 16:16:06 +01:00
  • af3b065add Merge pull request #403 from fjosw/fix/cuda_11_5_warnings Peter Boyle 2022-05-24 11:10:02 -04:00
  • e346154c5d Updated json CUDA compile guards rhodgson 2022-05-24 15:47:01 +01:00
  • 7937ac2bab fix: conditional pragmas according to new NVCC_DIAG_PRAGMA_SUPPORT standard in pugixml/pugixml.cc fjosw 2022-05-24 15:31:03 +01:00
  • e909aeedf0 fix: conditional pragmas according to new NVCC_DIAG_PRAGMA_SUPPORT standard in Grid_Eigen_Dense.h fjosw 2022-05-24 15:29:42 +01:00
  • bab8aa8eb0 fix: conditional pragmas according to new NVCC_DIAG_PRAGMA_SUPPORT standard in DisableWarnings.h fjosw 2022-05-24 15:27:40 +01:00
  • 38b22f05be Merge pull request #402 from fjosw/fix/clover_warnings Peter Boyle 2022-05-24 10:05:27 -04:00
  • 3ca0de1c40 Fix json write for vector<string> rhodgson 2022-05-24 14:37:33 +01:00
  • c7205d2a73 Removed nvcc guards for json rhodgson 2022-05-24 14:30:26 +01:00
  • 617c5362c1 fix: fixed warning: missing return statement at end of non-void function in CloverHelpers fjosw 2022-05-24 11:37:33 +01:00
  • 083b58e66d Merge pull request #401 from JPRichings/LocalCoheranceDeflation Peter Boyle 2022-05-20 11:44:22 -04:00
  • 633427a2df Merge pull request #400 from JPRichings/wilson_sweep Peter Boyle 2022-05-20 11:43:40 -04:00
  • 2031d6910a Merge branch 'paboyle:develop' into wilson_sweep JPRichings 2022-05-20 16:20:23 +01:00
  • f82ce67624 Dirichlet improved Peter Boyle 2022-05-19 19:17:11 -07:00
  • b52e8ef65a Dirichlet changes Peter Boyle 2022-05-19 16:45:41 -07:00
  • 2594e3c230 Dirichlet option Peter Boyle 2022-05-19 16:45:19 -07:00
  • 8cedb45af2 Dirichlet BCs Peter Boyle 2022-05-19 16:45:02 -07:00
  • aa008cbe99 Updated for new Dirichlet interface Peter Boyle 2022-05-19 16:44:39 -07:00
  • 79e34b3eb4 Local Coherence batch deflation JPRichings 2022-05-19 14:53:17 +01:00
  • 4f3d581ab4 Merge branch 'paboyle:develop' into LocalCoheranceDeflation JPRichings 2022-05-19 14:46:17 +01:00
  • 6fb6ca5b6b Merge branch 'develop' into feature/dirichlet Peter Boyle 2022-05-17 09:09:00 -07:00
  • b8ee19691c Updated config for PM Peter Boyle 2022-05-17 09:08:12 -07:00
  • d16427b837 Merge pull request #399 from fjosw/fix/Nc_neq_3 Peter Boyle 2022-05-17 09:03:42 -04:00
  • 4b1997e2f3 wilson sweep test JPRichings 2022-05-16 15:58:33 +01:00
  • 8939d5dc73 bugfix: eo operator called in correct location JPRichings 2022-05-16 00:28:28 +01:00
  • b051e00de0 Additional Local Coherance Deflation operator() JPRichings 2022-05-16 00:25:13 +01:00
  • 8aa75b492f Merge branch 'develop' into fix/Nc_neq_3 fjosw 2022-05-10 14:22:03 +01:00
  • 0274f40686 Merge pull request #389 from mbruno46/mbruno-eclover Peter Boyle 2022-05-10 09:18:19 -04:00
  • 77aa147ce5 Merge branch 'develop' into mbruno-eclover Peter Boyle 2022-05-10 09:16:53 -04:00
  • 32facbd02a fix: assert for dimensions of compact Wilson clover moved to constructor. fjosw 2022-05-10 10:53:22 +01:00
  • 6121397587 Imported changes from feature/gparity_HMC branch: Added storage of final true residual in mixed-prec CG and enhanced log output Fixed const correctness of multi-shift constructor Added a mixed precision variant of the multi-shift algorithm that uses a single precision operator and applies periodic reliable update to the residual Added tests/solver/Test_dwf_multishift_mixedprec to test the above Fixed local coherence lanczos using the (large!) max approx to the chebyshev eval as the scale from which to judge the quality of convergence, resulting a test that always passes Added a method to local coherence lanczos class that returns the fine eval/evec pair Added iterative log output to power method Added optional disabling of the plaquette check in Nerscio to support loading old G-parity configs which have a factor of 2 error in the plaquette G-parity Dirac op no longer allows GPBC in the time direction; instead we toggle between periodic and antiperiodic Replaced thread_for G-parity 5D force insertion implementation with accelerator_for version capable of running on GPUs Generalized tests/lanczos/Test_dwf_lanczos to support regular DWF as well as Gparity, with the action chosen by a command line option Modified tests/forces/Test_dwf_gpforce,Test_gpdwf_force,Test_gpwilson_force to use GPBC a spatial direction rather than the t-direction, and antiperiodic BCs for time direction tests/core/Test_gparity now supports using APBC in time direction using command line toggle Christopher Kelly 2022-05-09 16:27:57 -04:00
  • 4de50ab146 Merge pull request #396 from fjosw/fix/readd_config.h Peter Boyle 2022-05-09 08:26:48 -04:00
  • 8b12a61097 fix: readded Config.h and Version.h to HFILEs in Grid/Makefile.am fjosw 2022-05-09 11:53:22 +01:00
  • 79ea027c0b Merge pull request #377 from RJHudspith/develop Peter Boyle 2022-05-03 08:55:48 -04:00
  • 62339d437f Merge pull request #387 from lehner/feature/gpt Peter Boyle 2022-05-03 08:52:18 -04:00
  • 698e745276 Merge pull request #390 from fjosw/feature/conserved_current_wilson Peter Boyle 2022-05-03 08:51:10 -04:00
  • 0417b96896 Merge pull request #391 from giltirn/feature/dirichlet-gparity-stage Peter Boyle 2022-05-03 08:50:18 -04:00
  • 9a6e2c315d Merge pull request #394 from fjosw/fix/gauge_fix_ErrorOnNoConverge Peter Boyle 2022-05-03 08:49:26 -04:00
  • e61fed87db SteepestDescentGaugeFix now exits when the algorithm does not converge. This behaviour can be altered by setting err_on_no_converge to false. fjosw 2022-04-20 15:41:55 +01:00