Neko
0.8.1
A portable framework for high-order spectral element flow simulations
|
Go to the source code of this file.
Functions | |
template<typename T , const int LX, const int CHUNKS> | |
__global__ void | ax_helm_kernel_1d (T *__restrict__ w, const T *__restrict__ u, const T *__restrict__ dx, const T *__restrict__ dy, const T *__restrict__ dz, const T *__restrict__ dxt, const T *__restrict__ dyt, const T *__restrict__ dzt, const T *__restrict__ h1, const T *__restrict__ g11, const T *__restrict__ g22, const T *__restrict__ g33, const T *__restrict__ g12, const T *__restrict__ g13, const T *__restrict__ g23) |
template<typename T , const int LX> | |
__global__ void | __launch_bounds__ (LX *LX, 3) ax_helm_kernel_kstep(T *__restrict__ w |
for (int k=0;k< LX;++k) | |
__syncthreads () | |
Variables | |
__global__ void const T *__restrict__ | u |
__global__ void const T *__restrict__ const T *__restrict__ | dx |
__global__ void const T *__restrict__ const T *__restrict__ const T *__restrict__ | dy |
__global__ void const T *__restrict__ const T *__restrict__ const T *__restrict__ const T *__restrict__ | dz |
__global__ void const T *__restrict__ const T *__restrict__ const T *__restrict__ const T *__restrict__ const T *__restrict__ | h1 |
__global__ void const T *__restrict__ const T *__restrict__ const T *__restrict__ const T *__restrict__ const T *__restrict__ const T *__restrict__ | g11 |
__global__ void const T *__restrict__ const T *__restrict__ const T *__restrict__ const T *__restrict__ const T *__restrict__ const T *__restrict__ const T *__restrict__ | g22 |
__global__ void const T *__restrict__ const T *__restrict__ const T *__restrict__ const T *__restrict__ const T *__restrict__ const T *__restrict__ const T *__restrict__ const T *__restrict__ | g33 |
__global__ void const T *__restrict__ const T *__restrict__ const T *__restrict__ const T *__restrict__ const T *__restrict__ const T *__restrict__ const T *__restrict__ const T *__restrict__ const T *__restrict__ | g12 |
__global__ void const T *__restrict__ const T *__restrict__ const T *__restrict__ const T *__restrict__ const T *__restrict__ const T *__restrict__ const T *__restrict__ const T *__restrict__ const T *__restrict__ const T *__restrict__ | g13 |
__global__ void const T *__restrict__ const T *__restrict__ const T *__restrict__ const T *__restrict__ const T *__restrict__ const T *__restrict__ const T *__restrict__ const T *__restrict__ const T *__restrict__ const T *__restrict__ const T *__restrict__ | g23 |
__shared__ T | shdy [LX *LX] = dy[ij] |
__shared__ T | shdz [LX *LX] = dz[ij] |
__shared__ T | shu [LX *LX] |
__shared__ T | shur [LX *LX] |
__shared__ T | shus [LX *LX] |
T | ru [LX] |
T | rw [LX] |
T | rut |
const int | e = blockIdx.x |
const int | j = threadIdx.y |
const int | i = threadIdx.x |
const int | ij = i + j*LX |
const int | ele = e*LX*LX*LX |
shdx [ij] = dx[ij] | |
const int | ij_p = i + j*(LX+1) |
__global__ void __launch_bounds__ | ( | LX * | LX, |
3 | |||
) |
Device kernel for axhelm with padding in shared memory to remove bank conflicts when LX is a power of 2
__syncthreads | ( | ) |
__global__ void ax_helm_kernel_1d | ( | T *__restrict__ | w, |
const T *__restrict__ | u, | ||
const T *__restrict__ | dx, | ||
const T *__restrict__ | dy, | ||
const T *__restrict__ | dz, | ||
const T *__restrict__ | dxt, | ||
const T *__restrict__ | dyt, | ||
const T *__restrict__ | dzt, | ||
const T *__restrict__ | h1, | ||
const T *__restrict__ | g11, | ||
const T *__restrict__ | g22, | ||
const T *__restrict__ | g33, | ||
const T *__restrict__ | g12, | ||
const T *__restrict__ | g13, | ||
const T *__restrict__ | g23 | ||
) |
Device kernels for Ax helm
Definition at line 42 of file ax_helm_kernel.h.
for | ( | ) |
Definition at line 186 of file ax_helm_kernel.h.
__global__ void const T* __restrict__ const T* __restrict__ dx |
Definition at line 152 of file ax_helm_kernel.h.
__global__ void const T* __restrict__ const T* __restrict__ const T* __restrict__ dy |
Definition at line 153 of file ax_helm_kernel.h.
__global__ void const T* __restrict__ const T* __restrict__ const T* __restrict__ const T* __restrict__ dz |
Definition at line 154 of file ax_helm_kernel.h.
const int e = blockIdx.x |
Definition at line 175 of file ax_helm_kernel.h.
const int ele = e*LX*LX*LX |
Definition at line 179 of file ax_helm_kernel.h.
__global__ void const T *__restrict__ const T *__restrict__ const T *__restrict__ const T *__restrict__ const T *__restrict__ const T *__restrict__ g11 |
Definition at line 156 of file ax_helm_kernel.h.
__global__ void const T *__restrict__ const T *__restrict__ const T *__restrict__ const T *__restrict__ const T *__restrict__ const T *__restrict__ const T *__restrict__ const T *__restrict__ const T *__restrict__ g12 |
Definition at line 159 of file ax_helm_kernel.h.
__global__ void const T *__restrict__ const T *__restrict__ const T *__restrict__ const T *__restrict__ const T *__restrict__ const T *__restrict__ const T *__restrict__ const T *__restrict__ const T *__restrict__ const T *__restrict__ g13 |
Definition at line 160 of file ax_helm_kernel.h.
__global__ void const T *__restrict__ const T *__restrict__ const T *__restrict__ const T *__restrict__ const T *__restrict__ const T *__restrict__ const T *__restrict__ g22 |
Definition at line 157 of file ax_helm_kernel.h.
__global__ void const T *__restrict__ const T *__restrict__ const T *__restrict__ const T *__restrict__ const T *__restrict__ const T *__restrict__ const T *__restrict__ const T *__restrict__ const T *__restrict__ const T *__restrict__ const T *__restrict__ g23 |
Definition at line 161 of file ax_helm_kernel.h.
__global__ void const T *__restrict__ const T *__restrict__ const T *__restrict__ const T *__restrict__ const T *__restrict__ const T *__restrict__ const T *__restrict__ const T *__restrict__ g33 |
Definition at line 158 of file ax_helm_kernel.h.
__global__ void const T *__restrict__ const T *__restrict__ const T *__restrict__ const T *__restrict__ const T *__restrict__ h1 |
Definition at line 155 of file ax_helm_kernel.h.
const int i = threadIdx.x |
Definition at line 177 of file ax_helm_kernel.h.
Definition at line 178 of file ax_helm_kernel.h.
Definition at line 283 of file ax_helm_kernel.h.
const int j = threadIdx.y |
Definition at line 176 of file ax_helm_kernel.h.
T ru[LX] |
Definition at line 171 of file ax_helm_kernel.h.
T rut |
Definition at line 173 of file ax_helm_kernel.h.
T rw[LX] |
Definition at line 172 of file ax_helm_kernel.h.
Definition at line 181 of file ax_helm_kernel.h.
Definition at line 164 of file ax_helm_kernel.h.
Definition at line 165 of file ax_helm_kernel.h.
__shared__ T shu |
Definition at line 167 of file ax_helm_kernel.h.
__shared__ T shur |
Definition at line 168 of file ax_helm_kernel.h.
__shared__ T shus |
Definition at line 169 of file ax_helm_kernel.h.
__global__ void const T* __restrict__ u |
Definition at line 151 of file ax_helm_kernel.h.