Gromacs
5.1
|
#include "gromacs/gmxlib/gpu_utils/gpu_macros.h"
#include "gromacs/legacyheaders/types/simple.h"
#include "gromacs/mdlib/nbnxn_gpu_types.h"
Declare interface for GPU execution for NBNXN module.
Functions | |
void | nbnxn_gpu_launch_kernel (gmx_nbnxn_gpu_t *nb, const struct nbnxn_atomdata_t *nbdata, int flags, int iloc) |
Launch asynchronously the nonbonded force calculations. More... | |
void | nbnxn_gpu_launch_cpyback (gmx_nbnxn_gpu_t *nb, const struct nbnxn_atomdata_t *nbatom, int flags, int aloc) |
Launch asynchronously the download of nonbonded forces from the GPU (and energies/shift forces if required). | |
void | nbnxn_gpu_wait_for_gpu (gmx_nbnxn_gpu_t *nb, const struct nbnxn_atomdata_t *nbatom, int flags, int aloc, real *e_lj, real *e_el, rvec *fshift) |
Wait for the asynchronously launched nonbonded calculations and data transfers to finish. | |
int | nbnxn_gpu_pick_ewald_kernel_type (bool bTwinCut) |
Selects the Ewald kernel type, analytical or tabulated, single or twin cut-off. | |
void nbnxn_gpu_launch_kernel | ( | gmx_nbnxn_gpu_t * | nb, |
const struct nbnxn_atomdata_t * | nbdata, | ||
int | flags, | ||
int | iloc | ||
) |
Launch asynchronously the nonbonded force calculations.
This consists of the following (async) steps launched: