This forum uses cookies
This forum makes use of cookies to store your login information if you are registered, and your last visit if you are not. Cookies are small text documents stored on your computer; the cookies set by this forum can only be used on this website and pose no security risk. Cookies on this forum also track the specific topics you have read and when you last read them. Please confirm whether you accept or reject these cookies being set.

A cookie will be stored in your browser regardless of choice to prevent you being asked this question again. You will be able to change your cookie settings at any time using the link in the footer.

GPU decoding only at 2% utilization
#1
Hello.

I have an Nvidia 4000 card I'm trying to get the most out of in Hybrid. I encode to x264 mp4. Deinterlacing and usually run four filters. Can I get more from the GPU or will I have to move to NCEnc. Thanks in advance. 

Don
Reply
#2
Testing a bit more, this is due to vapursynth. If I turn off all filters the GPU is at 100%. Is this normal behaviour?
Reply
#3
Yes, since if you use Vapoursynth, without enabling gpu hardware decoding or when your source can't be decoded by the gpu decoder chip the hardware decoding can't be used.
Using NVEnc© as encoder + enabling "NVEnc->Hardware->Only use encoder" will be the fastest. Then no Vapoursynth&Avisynth can be used, since everything is done through NVEnc. (having decoding, filtering and encoding directly on graphic board is the fastest)
When Using NVEnc© and using Synth, enabling "NVEnc->Misc->Misc->DirectSynthLoading" (and depending on the input 'MT'), might also speed things up. This way, the Vapoursynth/Avisynth scripts will be directly loaded by NVEnc©.

For decoding, when using NoSynth, enabling "Config->Input->Decoding->Use gpu for decoding" might speed things up, assuming the input can be decoded by the decoder chip of your gpu.

Using NVEnc as encoder and Vapoursynth, and your source can be decoded through the decoder chip, depending on the used SourceFilter, decoding can get faster if that source filter supports gpu decoding and that is enabled. "Filtering->Vapoursynth->Misc->Source", 'Use DGDecNV when available', 'Prefer BestSource' with 'gpu' and' configuring 'Libav hardware decoding mode' can help there.

Also, using gpu based filters might help.
When using Vapoursynth or Avisynth, depending on the filters, it's normal that the gpu isn't full utilized since:
a. cpu based filters might bottleneck the gpu filters
b. copying data between cpu and gpu will slow stuff down.

Cu Selur
Reply
#4
Hello Selur

I appreciate your help. The filters being used are QTGMC, DegrainMedian, DFTTest, YAHR, and aWarpSharp2

When enabling DirectSynthLoading the fps tanks <10 - and 'best source for file input' 'cuda' crashes.

the source file is Huffyuv 32bit AVI.

Don
Reply
#5
Huffyuv is not supported by the decoder chip, it can only be decoded by the CPU, so:
1. so leave Bestsource set to CPU.
2. there is probably nothing you can do aside from trying to tweak your settings or use other filters.

Cu Selur
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)