Neko 0.9.99
A portable framework for high-order spectral element flow simulations
Loading...
Searching...
No Matches
gs.cu File Reference
#include <climits>
#include <cstdio>
#include <device/device_config.h>
#include <device/cuda/check.h>
#include "gs_kernels.h"

Go to the source code of this file.

Macros

#define GS_OP_ADD   1
 
#define GS_OP_MUL   2
 
#define GS_OP_MIN   3
 
#define GS_OP_MAX   4
 

Functions

void cuda_gather_kernel (void *v, int *m, int *o, void *dg, void *u, int *n, void *gd, int *nb, void *b, void *bo, int *op, cudaStream_t stream)
 
void cuda_scatter_kernel (void *v, int *m, void *dg, void *u, int *n, void *gd, int *nb, void *b, void *bo, cudaStream_t stream)
 
void cuda_gs_pack (void *u_d, void *buf_d, void *dof_d, int offset, int n, cudaStream_t stream)
 
void cuda_gs_unpack (real *u_d, int op, real *buf_d, int *dof_d, int offset, int n, cudaStream_t stream)
 

Macro Definition Documentation

◆ GS_OP_ADD

#define GS_OP_ADD   1

Definition at line 41 of file gs.cu.

◆ GS_OP_MAX

#define GS_OP_MAX   4

Definition at line 44 of file gs.cu.

◆ GS_OP_MIN

#define GS_OP_MIN   3

Definition at line 43 of file gs.cu.

◆ GS_OP_MUL

#define GS_OP_MUL   2

Definition at line 42 of file gs.cu.

Function Documentation

◆ cuda_gather_kernel()

void cuda_gather_kernel ( void v,
int m,
int o,
void dg,
void u,
int n,
void gd,
int nb,
void b,
void bo,
int op,
cudaStream_t  stream 
)

Fortran wrapper for device gather kernels

Definition at line 51 of file gs.cu.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ cuda_gs_pack()

void cuda_gs_pack ( void u_d,
void buf_d,
void dof_d,
int  offset,
int  n,
cudaStream_t  stream 
)

Pack send buffer on device

Definition at line 116 of file gs.cu.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ cuda_gs_unpack()

void cuda_gs_unpack ( real u_d,
int  op,
real buf_d,
int dof_d,
int  offset,
int  n,
cudaStream_t  stream 
)

Unpack receive buffer on device

Definition at line 139 of file gs.cu.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ cuda_scatter_kernel()

void cuda_scatter_kernel ( void v,
int m,
void dg,
void u,
int n,
void gd,
int nb,
void b,
void bo,
cudaStream_t  stream 
)

Fortran wrapper for device scatter kernel

Definition at line 96 of file gs.cu.

Here is the call graph for this function:
Here is the caller graph for this function: