Repository navigation
WIP: Integrate support for GlobalMaster and CUDAGlobalMaster - #914
giacomofiorin wants to merge 4 commits into
Conversation
c5dd78f to
2c253b9
Compare
2c253b9 to
b4e33e9
Compare
3af1061 to
83521f2
Compare
e5a29f6 to
c645379
Compare
8fb337d to
8c66ca3
Compare
|
@HanatoK The commits up until the last one ensure that the The latest commit is entirely generated by Copilot, and it combines improvements to |
8c66ca3 to
3ba0521
Compare
The Copilot changes are now split in the three latest commits. |
9f87683 to
8cf4cc4
Compare
|
I am afraid that this PR would break the CUDAGM plugin build if merged. The original |
Thanks! As I was afraid, we're not that close to full integration unfortunately. I'm going to create a separate PR for the |
8cf4cc4 to
80ecf8c
Compare
80ecf8c to
1956137
Compare
1956137 to
0daae70
Compare
0daae70 to
1352647
Compare
1352647 to
756576c
Compare
Currently, GlobalMaster (GM) is a required component of the default interface between NAMD and Colvars; this class interacts with the class
colvarproxy_namdto communicate all data related to atoms, groups and unit cell.CUDAGlobalMaster (CUDAGM) (see #783) is an alternative interface that is much faster in GPU-resident runs, but does not support the other use cases (pure CPU or GPU-offload), or some specialized features of GlobalMaster. Additionally, the CUDAGM client bundled in
namd/cudaglobalmasterfolder currently uses a different class to interact with Colvars, calledcolvarproxy_impl, which duplicates some but not all of the code ofcolvarproxy_namd.This PR aims to unify the
colvarproxy_implandcolvarproxy_namdclasses, so that the end product (still calledcolvarproxy_namdfor consistency) can handle both GM and CUDAGM interfaces.