|
Gromacs
2025.3
|
#include "config.h"#include <string>#include "gromacs/gpu_utils/gpu_utils.h"#include "gromacs/math/vec.h"#include "gromacs/mdtypes/simulation_workload.h"#include "gromacs/nbnxm/nbnxm.h"#include "gromacs/pbcutil/ishift.h"#include "gromacs/timing/gpu_timing.h"#include "gromacs/timing/wallcycle.h"#include "gromacs/utility/stringutil.h"#include "gpu_common_utils.h"#include "nbnxm_gpu.h"
Include dependency graph for gpu_common.h:
This graph shows which files directly or indirectly include this file:Common functions for the different NBNXN GPU implementations.
Functions | |
| static void | gmx::countPruneKernelTime (GpuTimers *timers, gmx_wallclock_gpu_nbnxn_t *timings, const InteractionLocality iloc) |
| Count pruning kernel time if either kernel has been triggered. More... | |
| static void | gmx::gpu_reduce_staged_outputs (const NBStagingData &nbst, const InteractionLocality iLocality, const bool reduceEnergies, const bool reduceFshift, real *e_lj, real *e_el, rvec *fshift) |
| Reduce data staged internally in the nbnxn module. More... | |
| template<typename GpuPairlist > | |
| static void | gmx::gpu_accumulate_timings (gmx_wallclock_gpu_nbnxn_t *timings, GpuTimers *timers, const GpuPairlist *plist, AtomLocality atomLocality, const StepWorkload &stepWork, bool doTiming) |
| Do the per-step timing accounting of the nonbonded tasks. More... | |
| bool | gmx::gpu_try_finish_task (NbnxmGpu *nb, const StepWorkload &stepWork, const AtomLocality aloc, real *e_lj, real *e_el, ArrayRef< RVec > shiftForces, GpuTaskCompletion completionKind) |
| Attempts to complete nonbonded GPU task. More... | |
| float | gmx::gpu_wait_finish_task (NbnxmGpu *nb, const StepWorkload &stepWork, AtomLocality aloc, real *e_lj, real *e_el, ArrayRef< RVec > shiftForces, gmx_wallcycle *wcycle) |
| Wait for the asynchronously launched nonbonded tasks and data transfers to finish. More... | |
1.8.5