lattice / quda

QUDA is a library for performing calculations in lattice QCD on GPUs.
https://lattice.github.io/quda
Other
287 stars 94 forks source link

Preconditioner cleanup #1390

Closed weinbe2 closed 1 year ago

weinbe2 commented 1 year ago

This narrow PR cleans up various bits and bops related to how preconditioners are created and handled in QUDA, plus other various helpful utilities:

Outstanding bits:

weinbe2 commented 1 year ago

This now passes ctest. @maddyscientist , assuming this now passes Jenkins, can you give this a look (and I can subsequently clang-format it)?

maddyscientist commented 1 year ago

This looks fairly inoffensive. Regarding ctest passing: does this pass on multiple GPUs? Checking, since this PR touches things with Schwarz solvers, just checking that the Schwarz-preconditioned tests are working ok (Mobius PCG and Wilson GCR).....

weinbe2 commented 1 year ago

This looks fairly inoffensive. Regarding ctest passing: does this pass on multiple GPUs? Checking, since this PR touches things with Schwarz solvers, just checking that the Schwarz-preconditioned tests are working ok (Mobius PCG and Wilson GCR).....

Yes, my ctest experiments were all with -DQUDA_MPI=ON builds running on 8xGPUs, 1x2x2x2 grid partitioning.