Project

General

Profile

Feature #3142

Feature #2816: GPU offload / optimization for update&constraits, buffer ops and multi-gpu communication

Feature #2817: GPU X/F buffer ops

Feature #3029: GPU force buffer ops + reduction

centralize and clarify GPU force buffer clearing

Added by Szilárd Páll about 1 month ago. Updated 19 days ago.

Status:
In Progress
Priority:
High
Assignee:
-
Category:
mdrun
Target version:
Difficulty:
uncategorized
Close

Description

The responsibility of (rvec) force buffer clearing should be moved into StatePropagatorDataGpu and arranged for such that this is not a task on the critical path (as it as right now in GpuHaloExchange::Impl::communicateHaloForces()).

At the same time, we need to
  • skip CPU-side force buffer clearing if there are no CPU forces computed
  • check all code-paths and make sure we can not end up with reduction kernels accumulating into non-initialized buffers.

History

#1 Updated by Szilárd Páll about 1 month ago

Note: this is high priority, but we can consider bumping it to beta3 except the last item and its impact on the buffer ops +/- GPU update code-path.

#2 Updated by Alan Gray 26 days ago

The responsibility of (rvec) force buffer clearing should be moved into StatePropagatorDataGpu and arranged for such that this is not a task on the critical path (as it as right now in GpuHaloExchange::Impl::communicateHaloForces()).

This has been done in the pending change
https://gerrit.gromacs.org/c/gromacs/+/13885

It is now a StatePropagatorDataGpu method operating in the non local stream.

#3 Updated by Paul Bauer 19 days ago

  • Target version changed from 2020-beta2 to 2020-beta3

bump

#4 Updated by Szilárd Páll 19 days ago

  • Status changed from New to In Progress

Also available in: Atom PDF