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

Separate PatchEnergyJit and PatchEnergyGPUJIT #968

Closed
b-butler opened this issue Apr 5, 2021 · 4 comments
Closed

Separate PatchEnergyJit and PatchEnergyGPUJIT #968

b-butler opened this issue Apr 5, 2021 · 4 comments
Labels
stale There has been no activity on this for some time. task Something needs to be done.

Comments

@b-butler
Copy link
Member

b-butler commented Apr 5, 2021

Description

Currently PatchEnergyJIT is the parent of PatchEnergyJITGPU, but since PatchEnergyJIT maintains CPU compiled code among other things leads this to not be a good paradigm. A PatchEnergyJIT class (distinct from the one above) should be created with the things in common, and PatchEnergyJITCPU and PatchEnergyJITGPU both should inherit from the new PatchEnergyJIT class.

Motivation and context

@b-butler b-butler added the task Something needs to be done. label Apr 5, 2021
@joaander joaander added this to the future milestone Sep 9, 2021
@joaander
Copy link
Member

joaander commented Sep 9, 2021

We will release 3.0.0 with the JIT as is and labelled experimental. We will delay this refactoring to a future 3.x release.

I do have a question about this though. Currently, PatchEnergyGPUJIT defers some of its computations, such as the total energy to the CPU via base class methods. Do you propose implementing all those methods on the GPU? This pattern is used throughout HOOMD where the base class implements the method on the CPU and the *GPU derived class overrides just a few methods to put the slow parts of the computation on the GPU.

@b-butler
Copy link
Member Author

b-butler commented Sep 9, 2021

Hmm, I didn't notice that we used compiled CPU code on the GPU. In that case, it is fine as is.

@joaander joaander removed this from the future milestone Mar 8, 2022
@github-actions
Copy link

This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs.

@github-actions github-actions bot added the stale There has been no activity on this for some time. label Nov 23, 2022
@github-actions
Copy link

github-actions bot commented Dec 4, 2022

This issue has been automatically closed because it has not had recent activity.

@github-actions github-actions bot closed this as not planned Won't fix, can't repro, duplicate, stale Dec 4, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
stale There has been no activity on this for some time. task Something needs to be done.
Projects
None yet
Development

No branches or pull requests

2 participants