FireSync API
 All Classes Files Functions Variables Typedefs Friends Macros Modules Pages
kCudaStream.h
Go to the documentation of this file.
1 
8 #ifndef K_FIRESYNC_CUDA_STREAM_H
9 #define K_FIRESYNC_CUDA_STREAM_H
10 
12 #include <kFireSync/Cuda/kCudaStream.x.h>
13 
20 //typedef kObject kCudaStream; --forward-declared in kFsDef.x.h
21 
30 kFsFx(kStatus) kCudaStream_Construct(kCudaStream* stream, kObject allocator);
31 
48 {
49  kObj(kCudaStream, stream);
50 
51  //default stream behaviour cannot be modified
52  if (stream != xkCudaStream_Default())
53  {
54  obj->sync = sync;
55  }
56 
57  return kOK;
58 }
59 
68 {
69  kObj(kCudaStream, stream);
70 
71  return obj->sync;
72 }
73 
83 {
84  kObj(kCudaStream, stream);
85 
86  return obj->handle;
87 }
88 
107 kFsFx(kStatus) kCudaStream_Synchronize(kCudaStream stream, kCudaSync sync = kCUDA_SYNC_WAIT_HOST, kBool isHostOperation = kTRUE);
108 
124 
139 kFsFx(kStatus) kCudaStream_DetachMemory(kCudaStream stream, kPointer mem, kCudaSync sync = kCUDA_SYNC_DEFAULT);
140 
141 #endif
Represents the synchronization mode for a Cuda operation.
#define kCUDA_SYNC_DEFAULT
Use default synchronization mode of the associated stream.
Definition: kCudaDef.h:40
Represents a Cuda stream object.
kCudaSync kCudaStream_DefaultSync(kCudaStream stream)
Reports the default synchronization mode of the stream.
Definition: kCudaStream.h:67
kStatus kCudaStream_DetachMemory(kCudaStream stream, kPointer mem, kCudaSync sync=kCUDA_SYNC_DEFAULT)
Detaches serial managed memory from a stream.
#define kInlineFx(TYPE)
kStatus kCudaStream_SetDefaultSync(kCudaStream stream, kCudaSync sync)
Sets the default synchronization mode of the stream.
Definition: kCudaStream.h:47
#define kObj(TypeName_T, T_object)
kStatus kCudaStream_Construct(kCudaStream *stream, kObject allocator)
Constructs a kCudaStream object.
kStatus kCudaStream_Synchronize(kCudaStream stream, kCudaSync sync=kCUDA_SYNC_WAIT_HOST, kBool isHostOperation=kTRUE)
Conditionally synchronizes a Cuda stream.
#define kCUDA_SYNC_WAIT_HOST
Block until operation is synchronously completed, if failing to do so might affect host memory access...
Definition: kCudaDef.h:42
#define kOK
kPointer kCudaStream_Handle(kCudaStream stream)
Gets the Cuda stream handle (cudaStream_t).
Definition: kCudaStream.h:82
Central Cuda-related definitions.
kStatus kCudaStream_AttachMemory(kCudaStream stream, kPointer mem, kCudaSync sync=kCUDA_SYNC_DEFAULT)
Attaches serial managed memory to a stream.