0

I have set up Nvidia V100 card on Azure Nc6s_v3 virtual machine. I have set up the latest CUDA driver and SDK. I compiled sample programs from "Video_Codec_SDK_9.0.20" and verified the max parallel transcode sessions using AppTrans binary. What I found is I can run 25 parallel transcode instances (25 decode, 25 encode), 26th instance will wait for anyone session to be deinitialized.

Can somebody explain, why is this limitation?

according to article there is no limitation on max concurrent sessions.

I compiled Gstreamer framework by enabling Nvidia plugins (nvdec and nvh264enc). I am seeing similar behavior here also. For 26th concurrent transcode session I am getting the following error:

ERROR: Pipeline doesn't want to pause.
ERROR: from element /GstPipeline:pipeline0/GstNvH264Enc:nvh264enc0: Could not initialize supporting library.
Additional debug info:
gstnvbaseenc.c(423): gst_nv_base_enc_open (): /GstPipeline:pipeline0/GstNvH264Enc:nvh264enc0:
Failed to create CUDA context, perhaps CUDA is not supported.
Setting pipeline to NULL ...
Freeing pipeline ...

Thanks in advance.

1 Answer 1

0

You seem to have encountered the artificial maximum number of simultaneous NVENC video encoding sessions that is imposed by Nvidia on consumer-grade GPUs.

There a well-known patch for that on Github nvidia-patch.

(I have never used this patch for Nvidia DLLs and cannot vouch that it will work.)

2
  • Thanks for the quick response harry. I am using Nvidia GPU (Tesla V100) on Azure NC6s_v3 machine. Do u think its consumer-grade GPU?
    – Raju
    Sep 9, 2019 at 8:59
  • Doesn't really sound like one. Perhaps there is a way to disable this limitation, but I don't think it's published. You could ask Nvidia Support for that, now that you have more information.
    – harrymc
    Sep 9, 2019 at 9:11

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .