1
0
mirror of https://github.com/paboyle/Grid.git synced 2025-06-21 01:02:02 +01:00

Commit Graph

  • f14e7e51e7 Grid accelerator Peter Boyle 2022-07-12 10:56:22 -07:00
  • 943fbb914d Merge branch 'feature/dirichlet' of https://github.com/paboyle/Grid into feature/dirichlet Peter Boyle 2022-07-11 13:48:42 -04:00
  • ca4603580d Verbose Peter Boyle 2022-07-11 13:48:35 -04:00
  • f73db8f1f3 Synch clocks Peter Boyle 2022-07-11 13:47:39 -04:00
  • f7217d12d2 World barrier for clock synch Peter Boyle 2022-07-11 13:45:31 -04:00
  • fab50c57d9 More loggin Peter Boyle 2022-07-11 18:42:27 +01:00
  • 3440534fbf MixedPrec support Peter Boyle 2022-07-10 21:35:18 +01:00
  • 177b1a7ec6 Mixed prec Peter Boyle 2022-07-10 21:34:10 +01:00
  • 58182fe345 Different approach to default dirichlet params Peter Boyle 2022-07-10 21:32:58 +01:00
  • 1f907d330d Different default params for dirichlet Peter Boyle 2022-07-10 21:31:48 +01:00
  • b0fe664e9d Better force log info Peter Boyle 2022-07-10 21:31:25 +01:00
  • c0f8482402 Remove SSC marks Peter Boyle 2022-07-07 17:49:36 +01:00
  • 3544965f54 Stream doesn't work Peter Boyle 2022-07-07 17:49:20 +01:00
  • 33e4a0caee Imported changes from feature/gparity_HMC branch: Rework of WilsonFlow class Fixed logic error in smear method where the step index was initialized to 1 rather than 0, resulting in the logged output value of tau being too large by epsilon Previously smear_adaptive would maintain the current value of tau as a class member variable whereas smear would compute it separately; now both methods maintain the current value internally and it is updated by the evolve_step routines. Both evolve methods are now const. smear_adaptive now also maintains the current value of epsilon internally, allowing it to be a const method and also allowing the same class instance to be reused without needing to be reset Replaced the fixed evaluation of the plaquette energy density and plaquette topological charge during the smearing with a highly flexible general strategy where the user can add arbitrary measurements as functional objects that are evaluated at an arbitrary frequency By default the same plaquette-based measurements are performed, but additional example functions are provided where the smearing is performed with different choices of measurement that are returned as an array for further processing Added a method to compute the energy density using the Cloverleaf approach which has smaller discretization errors Added a new tensor utility operation, copyLane, which allows for the copying of a single SIMD lane between two instances of the same tensor type but potentially different precisions To LocalCoherenceLanczos, added the option to compute the high/low eval of the fine operator on every restart to aid in tuning the Chebyshev Added Test_field_array_io which demonstrates and tests a single-file write of an arbitrary array of fields Added Test_evec_compression which generates evecs using Lanczos and attempts to compress them using the local coherence technique Added Test_compressed_lanczos_gparity which demonstrates the local coherence Lanczos for G-parity BCs Added HMC main programs for the 40ID and 48ID G-parity lattices Christopher Kelly 2022-07-01 14:10:59 -04:00
  • 1f903d9296 Merge branch 'feature/dirichlet' into feature/dirichlet-gparity Peter Boyle 2022-07-01 12:12:50 -04:00
  • 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 Raoul Hodgson 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 Raoul Hodgson 2022-05-24 15:47:01 +01:00
  • 7937ac2bab fix: conditional pragmas according to new NVCC_DIAG_PRAGMA_SUPPORT standard in pugixml/pugixml.cc Fabian Joswig 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 Fabian Joswig 2022-05-24 15:29:42 +01:00
  • bab8aa8eb0 fix: conditional pragmas according to new NVCC_DIAG_PRAGMA_SUPPORT standard in DisableWarnings.h Fabian Joswig 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> Raoul Hodgson 2022-05-24 14:37:33 +01:00
  • c7205d2a73 Removed nvcc guards for json Raoul Hodgson 2022-05-24 14:30:26 +01:00
  • 617c5362c1 fix: fixed warning: missing return statement at end of non-void function in CloverHelpers Fabian Joswig 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 James Richings 2022-05-16 15:58:33 +01:00