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 https://developer.nvidia.com/video-encode-decode-gpu-support-matrix 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.