【问题标题】:Is it possible to run two kernels belonging to different application run concurrently?是否可以同时运行属于不同应用程序的两个内核?
【发布时间】:2013-01-31 07:30:58
【问题描述】:

我想同时运行属于两个不同 CUDA 程序的两个内核。我不希望发生上下文切换。我希望这两个程序共享设备。我的 GPU 中有 14 个 SM,一个程序使用 2 个 SM,另一个程序使用 1 个 SM。但我无法同时运行它们。第二个程序一直等到第一个程序完成执行。 GPU 设备是 nVidia Tesla M2050。使用 deviceQuery 时,它表示该卡支持并发内核执行(这适用于属于一个程序/进程/上下文的内核吗?)。此外,设备处于默认计算模式。它没有设置为任何独占模式。 有什么办法可以同时运行它们吗?

【问题讨论】:

  • 目前任何硬件都无法做到这一点

标签: cuda gpu gpgpu nvidia


【解决方案1】:

先看看https://stackoverflow.com/a/14896945/56875。 GPU 无法在两个 cuda 上下文的并行内核中执行。

我以前没有尝试过,但是在 linux 上你可以尝试使用 CUDA-proxy 作弊,这是一个创建单个上下文但允许其他 cuda 进程使用代理上下文的单个进程。

【讨论】:

    【解决方案2】:

    正如@talonmies 在评论中所说 - 目前这是不可能的。任何时候都只能在给定设备上存在一个 CUDA 上下文。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-07-03
      • 1970-01-01
      • 1970-01-01
      • 2022-09-28
      • 1970-01-01
      • 1970-01-01
      • 2012-11-19
      • 2012-10-08
      相关资源
      最近更新 更多