1

当您使用 CUDA 驱动程序 API 调用执行等待值操作时cuStreamWaitValue32(),您可以指定标志CU_STREAM_WAIT_VALUE_FLUSH。这是文档所说的:

在等待操作之后刷新未完成的远程写入。这意味着,如果保证在等待满足之前远程写入操作已到达设备,则该写入保证对下游设备工作可见。

我的问题是:在这种情况下,什么算作“远程写入”?它只调用cuStreamWriteValue32()/ cuStreamWriteValue64()吗?是否有涉及不同设备或主机的任何类型的写入?包括cudaMemcpy()和朋友?

4

1 回答 1

1

远程写入是由针对 GPU 设备内存的第三方设备发出的写入。这与GPUDirect RDMA有关。通过扩展,这还包括 CPU 通过GDRCopy映射发出的写入。

于 2020-09-18T23:58:59.273 回答