Neko 1.99.3
A portable framework for high-order spectral element flow simulations
Loading...
Searching...
No Matches
nvtx_wrapper.cu
Go to the documentation of this file.
1/*
2 * External-linkage wrappers for NVTX.
3 *
4 * NVTX3 (shipped with CUDA 12.9+) is header-only: the entry points are
5 * static inline functions and libnvToolsExt is no longer available. These
6 * shims provide real symbols so the Fortran bindings work against both
7 * NVTX2 (legacy library) and NVTX3 (header-only) installations.
8 */
9
10#ifdef HAVE_NVTX
11
12#ifdef HAVE_NVTX3
13#include <nvtx3/nvToolsExt.h>
14#else
15#include <nvToolsExt.h>
16#endif
17
18extern "C" {
19
20 void neko_nvtxRangePushA(const char *name)
21 {
22 nvtxRangePushA(name);
23 }
24
26 {
27 nvtxRangePushEx(event);
28 }
29
30 void neko_nvtxRangePop(void)
31 {
33 }
34
35}
36
37#endif
__global__ void dirichlet_apply_scalar_kernel(const int *__restrict__ msk, T *__restrict__ x, const T g, const int m)