#ifndef GMX_NBNXN_GPU_DATA_MGMT_H
#define GMX_NBNXN_GPU_DATA_MGMT_H
+#include <memory>
+
#include "gromacs/gpu_utils/gpu_macros.h"
#include "gromacs/mdtypes/interaction_const.h"
/** Initializes the data structures related to GPU nonbonded calculations. */
GPU_FUNC_QUALIFIER
-void gpu_init(gmx_nbnxn_gpu_t gmx_unused **p_nb,
- const gmx_device_info_t gmx_unused *deviceInfo,
- const interaction_const_t gmx_unused *ic,
- const NbnxnListParameters gmx_unused *listParams,
- const nbnxn_atomdata_t gmx_unused *nbat,
- int gmx_unused rank,
- /* true if both local and non-local are done on GPU */
- gmx_bool gmx_unused bLocalAndNonlocal) GPU_FUNC_TERM
+gmx_nbnxn_gpu_t *
+gpu_init(const gmx_device_info_t gmx_unused *deviceInfo,
+ const interaction_const_t gmx_unused *ic,
+ const NbnxnListParameters gmx_unused *listParams,
+ const nbnxn_atomdata_t gmx_unused *nbat,
+ int gmx_unused rank,
+ /* true if both local and non-local are done on GPU */
+ gmx_bool gmx_unused bLocalAndNonlocal) GPU_FUNC_TERM_WITH_RETURN(nullptr)
/** Initializes pair-list data for GPU, called at every pair search step. */
GPU_FUNC_QUALIFIER
/** Calculates the minimum size of proximity lists to improve SM load balance
* with GPU non-bonded kernels. */
- GPU_FUNC_QUALIFIER
+ GPU_FUNC_QUALIFIER
int gpu_min_ci_balanced(gmx_nbnxn_gpu_t gmx_unused *nb) GPU_FUNC_TERM_WITH_RETURN(-1)
/** Returns if analytical Ewald GPU kernels are used. */
* Note: CUDA only.
*/
CUDA_FUNC_QUALIFIER
- rvec *gpu_get_fshift(gmx_nbnxn_gpu_t gmx_unused *nb) CUDA_FUNC_TERM_WITH_RETURN(nullptr)
+ rvec *gpu_get_fshift(gmx_nbnxn_gpu_t gmx_unused *nb) CUDA_FUNC_TERM_WITH_RETURN(nullptr)
} // namespace Nbnxm