lattice / quda

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

Add outer product to internal quda test suite #164

Open mathiaswagner opened 9 years ago

jpfoley commented 9 years ago

This ought to be easy. The outer-product code is written in terms of the Spinor class defined in textures.h. At the moment, the Spinor class is used to access quark-field data on the device. Ideally, there would be an analogous Spinor class for host fields, which would allow us to use the same high-level code for the host and device, at least in the single-GPU build. See Mike's gauge-field update code for an example of this in action.

maddyscientist commented 9 years ago

That doesn't give an independent test though. All other unit tests have a separate CPU reference code from

which to verify.

This email message is for the sole use of the intended recipient(s) and may contain confidential information. Any unauthorized review, use, disclosure or distribution is prohibited. If you are not the intended recipient, please contact the sender by

reply email and destroy all copies of the original message.

jpfoley commented 9 years ago

Well, that's true to a point, but it would allow you to quickly pick up on device-specific bugs, like incorrectly initialized textures. Of course, you could start from scratch and write completely independent host and device functions, but it's still possible (albeit less likely) to introduce the same high-level bugs on host and device, particularly if both functions are written by the same author.

maddyscientist commented 4 years ago

Assigning to @weinbe2 to take a look at this.