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

staggered contraction code #1416

Closed alexstrel closed 2 months ago

alexstrel commented 9 months ago

This PR primarily adds an extension to the QUDA contraction code for staggered fermions. To utilize this, a new parameter, QUDA_CONTRACT_TYPE_STAGGERED_FT_T, has been introduced. The main application for testing this is contractFT_test.cpp.

maddyscientist commented 9 months ago

Glad you got this pull request opened @alexstrel and @james-simone. Once you get the CI tests to pass we can proceed to reviewing it.

alexstrel commented 9 months ago

Thank you @maddyscientist for comments and suggestions. what was the purpose of the method at https://github.com/lattice/quda/blob/feature/staggered_correlators/include/color_spinor_field.h#L789 It seems that the only place where it was supposed to be used is https://github.com/lattice/quda/blob/feature/staggered_correlators/lib/vector_io.cpp#L358 but it is itself a commented code. Besides, it looks like that downPrec is now an abandoned function, so my suggestion is to delete it.

maddyscientist commented 9 months ago

@alexstrel regarding ColorSpinorField::CreateAlias, it has been superseded by ColorSpinorField::create_alias, and as you point out it's not now used anywhere. So I think we can just delete both CreateAlias and downPrec as you suggest.

maddyscientist commented 6 months ago

@alexstrel have the contraction kernels been testing running on multiple GPU, when partitioning the XYZ dimension? Looking at the code, I'm not sure that this case is properly supported.