Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Optimizations to smearing interface #1444

Merged
merged 4 commits into from
Mar 6, 2024
Merged

Conversation

agrebe
Copy link
Contributor

@agrebe agrebe commented Mar 5, 2024

I have been computing two-link smearing with QUDA and have made two optimizations to the smearing interface:

  1. In lib/milc_interface.cpp, skip the call to loadGaugeQuda if the useResidentGauge flag is set (since in this case, the 2-link field is already computed)
  2. Simplify the four linear algebra operations in the loop in performTwoLinkGaussianSmearNStep in lib/interface_quda.cpp to a single operation
    I have tested that this agrees with the previous implementation (using QUDA driven by MILC on a single GPU), and overall these changes increase performance by a factor of about 2 in our project.

@agrebe agrebe requested a review from a team as a code owner March 5, 2024 20:28
@maddyscientist
Copy link
Member

This is great contribution, thanks @agrebe. Aside from my comment, please also clang-format the diff, and also feel free to add your name to the contributors in the README.

@Jenkins ok to test

Copy link
Member

@maddyscientist maddyscientist left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for the fast turn around. Approving. We can merge this once CI finishes.

(And I see you were already contributor, apologies for failing to recall this.)

@agrebe
Copy link
Contributor Author

agrebe commented Mar 5, 2024

Thank you for reviewing this so quickly -- I'm glad to be able to contribute given how useful this codebase has been for me!

@maddyscientist maddyscientist merged commit c051eac into lattice:develop Mar 6, 2024
11 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants