Neko-TOP
A portable framework for high-order spectral element flow toplogy optimization.
Loading...
Searching...
No Matches
Borrvall_Petersson_mapping.hip
Go to the documentation of this file.
1
37
// System includes
38
#include <stdio.h>
39
#include <stdlib.h>
40
41
// Device includes
42
#include <hip/hip_runtime.h>
43
44
// Neko includes
45
#include <neko/device/device_config.h>
46
#include <neko/device/hip/check.h>
47
48
// Local includes
49
#include "
Borrvall_Petersson_mapping_kernel.h
"
50
51
extern
"C"
{
52
55
void
hip_Borrvall_Petersson_mapping_apply
(
real
* f_min,
real
* f_max,
real
* q,
56
void
*
X_out_d
,
void
*
X_in_d
,
int
* n) {
57
58
const
dim3
nthrds
(1024, 1, 1);
59
const
dim3
nblcks
(((*n) + 1024 - 1) / 1024, 1, 1);
60
61
hipLaunchKernelGGL
(
62
HIP_KERNEL_NAME
(
Borrvall_Petersson_mapping_apply_kernel<real>
),
63
nblcks
,
nthrds
, 0, (
hipStream_t
)
glb_cmd_queue
,
64
*f_min, *f_max, *q, (
real
*)
X_out_d
, (
real
*)
X_in_d
, *n);
65
HIP_CHECK
(
hipGetLastError
());
66
}
67
70
void
hip_Borrvall_Petersson_mapping_apply_backward
(
real
* f_min,
real
* f_max,
71
real
* q,
void
*
sens_out_d
,
void
*
sens_in_d
,
void
*
X_in_d
,
int
* n) {
72
73
const
dim3
nthrds
(1024, 1, 1);
74
const
dim3
nblcks
(((*n) + 1024 - 1) / 1024, 1, 1);
75
76
hipLaunchKernelGGL
(
77
HIP_KERNEL_NAME
(
Borrvall_Petersson_mapping_apply_backward_kernel<real>
),
78
nblcks
,
nthrds
, 0, (
hipStream_t
)
glb_cmd_queue
,
79
*f_min, *f_max, *q, (
real
*)
sens_out_d
, (
real
*)
sens_in_d
,
80
(
real
*)
X_in_d
, *n);
81
HIP_CHECK
(
hipGetLastError
());
82
}
83
}
hip_Borrvall_Petersson_mapping_apply_backward
void hip_Borrvall_Petersson_mapping_apply_backward(real *f_min, real *f_max, real *q, void *sens_out_d, void *sens_in_d, void *X_in_d, int *n)
Definition
Borrvall_Petersson_mapping.hip:70
hip_Borrvall_Petersson_mapping_apply
void hip_Borrvall_Petersson_mapping_apply(real *f_min, real *f_max, real *q, void *X_out_d, void *X_in_d, int *n)
Definition
Borrvall_Petersson_mapping.hip:55
Borrvall_Petersson_mapping_apply_kernel
__global__ void Borrvall_Petersson_mapping_apply_kernel(const T f_min, const T f_max, const T q, T *__restrict__ X_out_d, T *__restrict__ X_in_d, const int n)
Definition
Borrvall_Petersson_mapping_kernel.h:44
Borrvall_Petersson_mapping_kernel.h
sources
mapping_functions
bcknd
device
hip
Borrvall_Petersson_mapping.hip
Generated by
1.9.8