您可以通过CU_STREAM_WAIT_VALUE_FLUSH等待什么“远程写入”?

问题描述

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

在等待操作之后进行大量未完成的远程写操作。这个 意味着,如果保证可以完成远程写操作, 等待之前的设备可以满足,保证写操作是 对下游设备工作可见。

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

解决方法

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

相关问答

错误1:Request method ‘DELETE‘ not supported 错误还原:...
错误1:启动docker镜像时报错:Error response from daemon:...
错误1:private field ‘xxx‘ is never assigned 按Alt...
报错如下,通过源不能下载,最后警告pip需升级版本 Requirem...