MUDA
Loading...
Searching...
No Matches
stream_define.h
1#pragma once
2#include <cuda.h>
3#include <cinttypes>
4#include <muda/tools/version.h>
5#include <cuda_device_runtime_api.h>
6namespace muda::details::stream
7{
8#if MUDA_GENERIC_STREAM_MODEL
9MUDA_INLINE MUDA_GENERIC cudaStream_t tail_launch()
10{
11 return cudaStreamTailLaunch;
12}
13MUDA_INLINE MUDA_GENERIC cudaStream_t fire_and_forget()
14{
15 return cudaStreamFireAndForget;
16}
17MUDA_INLINE MUDA_GENERIC cudaStream_t graph_tail_launch()
18{
19 return cudaStreamGraphTailLaunch;
20}
21MUDA_INLINE MUDA_GENERIC cudaStream_t graph_fire_and_forget()
22{
23 return cudaStreamGraphFireAndForget;
24}
25#else
26MUDA_INLINE MUDA_GENERIC cudaStream_t graph_tail_launch()
27{
28 return reinterpret_cast<cudaStream_t>(0x0100000000000000);
29}
30MUDA_INLINE MUDA_GENERIC cudaStream_t graph_fire_and_forget()
31{
32 return reinterpret_cast<cudaStream_t>(0x0200000000000000);
33}
34MUDA_INLINE MUDA_GENERIC cudaStream_t tail_launch()
35{
36 return reinterpret_cast<cudaStream_t>(0x3);
37}
38MUDA_INLINE MUDA_GENERIC cudaStream_t fire_and_forget()
39{
40 return reinterpret_cast<cudaStream_t>(0x4);
41}
42#endif
43} // namespace muda::details::stream