【问题标题】:Is it possible to somehow dequeue actions from a CUDA stream?是否有可能以某种方式从 CUDA 流中取出操作?
【发布时间】:2017-12-04 00:22:08
【问题描述】:

在 CUDA 流上,我们可以入队:

  • 启动(内核、回调)
  • 事件操作(等待、触发)
  • 内存操作(复制、设置、附加)

但是对于这些操作中的任何一个出列都没有 API 调用。有没有办法实现相同的效果 - 对于部分或所有这些类型的操作?

注意:不排除涉及销毁流的建议。

【问题讨论】:

    标签: cuda scheduling


    【解决方案1】:

    对于启动,我们可以将内核和/或回调写入:

    • 将(主机或设备端)“中止”标志的地址作为参数
    • 在执行任何其他操作之前查询该标志的值
    • 如果旗帜升起,什么也不做,直接返回。

    在这种情况下,可以通过设置它们的标志来中止它们。有点浪费,但不是很浪费。

    我不确定其他的一切。

    【讨论】:

      猜你喜欢
      • 2015-12-07
      • 2020-09-24
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-11-17
      • 1970-01-01
      • 1970-01-01
      • 2020-03-22
      相关资源
      最近更新 更多