(git:ccc2433)
grid_gpu_integrate.h
Go to the documentation of this file.
1 /*----------------------------------------------------------------------------*/
2 /* CP2K: A general program to perform molecular dynamics simulations */
3 /* Copyright 2000-2024 CP2K developers group <https://cp2k.org> */
4 /* */
5 /* SPDX-License-Identifier: BSD-3-Clause */
6 /*----------------------------------------------------------------------------*/
7 #ifndef GRID_GPU_INTEGRATE_H
8 #define GRID_GPU_INTEGRATE_H
9 
10 #include "../../offload/offload_runtime.h"
11 #if defined(__OFFLOAD) && !defined(__NO_OFFLOAD_GRID)
12 
13 #include "grid_gpu_task_list.h"
14 
15 #ifdef __cplusplus
16 extern "C" {
17 #endif
18 
19 /*******************************************************************************
20  * \brief Launches the Cuda kernel that integrates all tasks of one grid level.
21  * \author Ole Schuett
22  ******************************************************************************/
23 void grid_gpu_integrate_one_grid_level(
24  const grid_gpu_task_list *task_list, const int first_task,
25  const int last_task, const bool compute_tau, const grid_gpu_layout *layout,
26  const offloadStream_t stream, const double *pab_blocks_dev,
27  const double *grid_dev, double *hab_blocks_dev, double *forces_dev,
28  double *virial_dev, int *lp_diff);
29 
30 #ifdef __cplusplus
31 }
32 #endif
33 
34 #endif // defined(__OFFLOAD) && !defined(__NO_OFFLOAD_GRID)
35 #endif
36 // EOF