- the update task assignment needs to:
- consider all cases when it should not be enabled (e.g. assertion on buffer ops, vsites, etc.)
consider dependencies like buffer ops (and enable these probably during SimulationWorkload init)
- consider how to treat partial command line specification, e.g.
gmx mdrun -update gpu; should this trigger the regular code-path (with bondeds not offloaded?)
despite having an
-updatemdrun flag we still have references to the
Add environment variable that changes the meaning of '-update auto'
This change creates 'GMX_FORCE_UPDATE_DEFAULT_GPU', that changes the
default behavior of '-update' option to 'gpu'. Also changed the
gpuupdate Jenkins trigger to set this environment variable.
Allow using GPU update with DD and update groups
The GPU update is now can be enabled for the supported DD cases
with the GMX_FORCE_UPDATE_DEFAULT_GPU environment variable. Also
added the checks on whether the SHAKE algorithm was requested,
since SHAKE is not supported by the GPU update.
#14 Updated by Artem Zhmurov 8 months ago
Although there is still a lot of things to do with regards to task assignment, I think this issue can be closed, because:
1. All unsupported cases are dealt with in decideWhetherToUseGpuForUpdate(...)
2. Currently, the update is by default on the GPU with single rank in supported cases. It is never on GPU for multi-rank cases, unless forced by environment variable.