我注意到cudaStreamCreate
只是一个__host__
- 函数,但cudaStreamCreateWithFlags
是一个__host__ __device__
函数。
cudaStreamCreate
函数中{{}}}不可用的两者之间是否存在重要差异?
我看到了documentation for the cudaStreamCreateWithFlags
flags parameter:
创建新的异步流。 flags参数确定了 流的行为。标志的有效值是
__device__
:默认流创建标记。cudaStreamDefault
:指定在创建的中运行的工作 流可以与流0中的工作(NULL流)同时运行, 并且创建的流不应执行隐式同步 与流0。
究竟是什么"默认流创建标志"意思?创建的流将如何表现?
答案 0 :(得分:1)
的行为
cudaStreamCreateWithFlags(&stream, cudaStreamDefault);
与
相同cudaStreamCreate(&stream);
除了cudaStreamCreate
是__host__
函数且cudaStreamCreateWithFlags
是__host__ __device__
函数。