Go to the documentation of this file.
17 #if defined(YAKL_ARCH_CUDA)
18 cudaDeviceSynchronize();
19 #elif defined(YAKL_ARCH_HIP)
20 hipDeviceSynchronize();
21 #elif defined(YAKL_ARCH_SYCL)
22 sycl_default_stream().wait_and_throw();
23 #elif defined(YAKL_ARCH_OPENMP)
35 #if defined(YAKL_ARCH_CUDA)
37 #elif defined(YAKL_ARCH_HIP)
39 #elif defined(YAKL_ARCH_SYCL)
41 #elif defined(YAKL_ARCH_OPENMP)
#define YAKL_EXECUTE_ON_DEVICE_ONLY(...)
[NOT COMMONLY USED] Macro function used to determine if the current code is compiling for the device.
Definition: YAKL_defines.h:158
#define __YAKL_NAMESPACE_WRAPPER_END__
Definition: YAKL.h:20
#define __YAKL_NAMESPACE_WRAPPER_BEGIN__
Definition: YAKL.h:19
This class is necessary for coordination of two-level parallelism.
Definition: YAKL_LaunchConfig.h:111
#define YAKL_INLINE
Used to decorate functions called from kernels (parallel_for and parallel_outer) or from CPU function...
Definition: YAKL_defines.h:140
void fence()
Block the host code until all device code has completed.
Definition: YAKL_fence.h:16
YAKL_INLINE void fence_inner(InnerHandler &handler)
Block inner threads until all inner threads have completed.
Definition: YAKL_fence.h:34