(git:419edc0)
Loading...
Searching...
No Matches
dbm_multiply_gpu_kernel.h
Go to the documentation of this file.
1/*----------------------------------------------------------------------------*/
2/* CP2K: A general program to perform molecular dynamics simulations */
3/* Copyright 2000-2025 CP2K developers group <https://cp2k.org> */
4/* */
5/* SPDX-License-Identifier: BSD-3-Clause */
6/*----------------------------------------------------------------------------*/
7
8#ifndef DBM_MULTIPLY_GPU_KERNEL_H
9#define DBM_MULTIPLY_GPU_KERNEL_H
10
11#include "../offload/offload_runtime.h"
12#if defined(__OFFLOAD) && !defined(__NO_OFFLOAD_DBM)
13
14#include "dbm_internal.h"
15
16#ifdef __cplusplus
17extern "C" {
18#endif
19
20/*******************************************************************************
21 * \brief Internal routine for launching the GPU kernel.
22 * All arguments are assumed to be device pointers.
23 * \author Ole Schuett
24 ******************************************************************************/
25void dbm_multiply_gpu_launch_kernel(offloadStream_t stream, double alpha,
26 int ntasks, const dbm_task_t *tasks_host,
27 const dbm_task_t *tasks,
28 const double *pack_a_data,
29 const double *pack_b_data,
30 double *shard_c_data);
31
32#ifdef __cplusplus
33}
34#endif
35
36#endif // defined(__OFFLOAD) && !defined(__NO_OFFLOAD_DBM)
37#endif
38
39// EOF
Internal struct for storing a task, ie. a single block multiplication.