46 void *arr2,
int * l2,
real * f2,
47 int * nx,
int * nel, cudaStream_t stream) {
49 const dim3 nthrds((*nx-2)*(*nx-2), 1, 1);
50 const dim3 nblcks((*nel), 1, 1);
54 schwarz_extrude_kernel<real,NX> \
55 <<<nblcks, nthrds, 0, stream>>>((real *) arr1,* l1, * f1, \
56 (real *) arr2, *l2, *f2 ); \
57 CUDA_CHECK(cudaGetLastError()); \
75 fprintf(stderr, __FILE__
": size not supported: %d\n", *nx);
84 const dim3 nthrds(1024, 1, 1);
85 const dim3 nblcks((*nel), 1, 1);
87 schwarz_toext3d_kernel<real>
88 <<<nblcks, nthrds, 0, stream>>>((
real *) a,(
real *) b, * nx);
94 const dim3 nthrds(1024, 1, 1);
95 const dim3 nblcks((*nel), 1, 1);
97 schwarz_toreg3d_kernel<real>
98 <<<nblcks, nthrds,0, stream>>>((
real *) b,(
real *) a, * nx);
void cuda_schwarz_extrude(void *arr1, int *l1, real *f1, void *arr2, int *l2, real *f2, int *nx, int *nel, cudaStream_t stream)
void cuda_schwarz_toreg3d(void *b, void *a, int *nx, int *nel, cudaStream_t stream)
void cuda_schwarz_toext3d(void *a, void *b, int *nx, int *nel, cudaStream_t stream)