每个 GPU 的 Nvenc 会话限制

Nvenc session limit per GPU

我正在使用 Imageio,这是一个 python 库,它环绕 ffmpeg 以通过 nvenc 进行硬件编码。我的问题是我无法启动超过 2 个会话(我使用的是非 quadro GPU)。甚至使用多个 GPU。我查看了 NVIDIA 的支持矩阵,他们说每个 gpu 只有 2 个会话,但它似乎是每个系统。

例如我在一个系统中有 2 个 GPU。我可以使用环境变量 CUDA_VISIBLE_DEVICES 或将 ffmpeg 标志 -gpu 设置为 select GPU。我已经使用 Nvidia-smi cli 验证了 gpu 的使用情况。我可以在单个 gpu 上进行 2 个编码会话。或者 1 个会话,每个会话在 2 个独立的 GPU 上工作。但我无法在 2 个 GPU 上进行 2 个编码会话。

更奇怪的是,如果我添加更多 gpus,我仍然停留在 2 个会话。我无法在第三个 gpu 上启动第三个编码会话。无论 gpus 的数量如何,我总是停留在 2。关于如何解决此问题的任何想法?

Nvidia 限制每个系统 2 个,而不是每个 GPU 2 个。限制在驱动程序中,而不是硬件中。已将非官方驱动程序发布到 github,这消除了限制