keylase / nvidia-patch

This patch removes restriction on maximum number of simultaneous NVENC video encoding sessions imposed by Nvidia to consumer-grade GPUs.
3.52k stars 277 forks source link

Patch fails on unraid 6.12.4 #710

Open 00Aperture00 opened 1 year ago

00Aperture00 commented 1 year ago

Describe the bug The patch doesn's seem to work on unraid ver. 6.12.4. The script says it successfully patched the driver but it breaks hardware transcoding. The patch outputs the following:


Detected nvidia driver version: 535.113.01 Attention! Backup not found. Copying current libnvidia-encode.so to backup. 09402632057ec85f24feb4bb0f3c799eba92d9bf /opt/nvidia/libnvidia-encode-backup/libnvidia-encode.so.535.113.01 19921ec71926f3eee80a37ce7a9d27ddaa788569 /usr/lib64/libnvidia-encode.so.535.113.01

ldconfig: /usr/lib64/libOpenGL.so.0 is not a symbolic link

ldconfig: /usr/lib64/libGLdispatch.so.0 is not a symbolic link

ldconfig: /usr/lib64/libGLX.so.0 is not a symbolic link

Patched!


Maybe the "...is not a symbolic link" has something to do with that? Any idea why that happens?

To Reproduce Steps to reproduce the behavior:

  1. Copy the patch into "User Scripts"
  2. Execute the Script

Expected behavior Working patch and unlocked nvidia driver for transcoding with plex

Output listings

Screenshot 2023-10-13 122131

Environment (please complete the following information):

Additional context Add any other context about the problem here.

Jonas337 commented 1 year ago

same issue, running 545.29.02 driver and using a p400. get the same output from running the patch, but it also breaks transcoding for me.

ColterD commented 1 year ago

Exact same issue here, watching.

ColterD commented 11 months ago

Small update to this. I was randomly searching to see if I could figure this out, I landed on this github issues thread: https://github.com/Ponce/slackbuilds/issues/60 in particular, this issue: https://github.com/Ponce/slackbuilds/issues/60#issuecomment-556466632

Running those steps lets both scripts run normally but i'm not sure if it actually fixed the issue but it at least makes those error messages go away. I do notice that the error messages still come up during unraid boot but.... I don't know.

ctrlaltd1337ed commented 11 months ago

This is still happening.

I backed up an old version of the patch (thankfully), and I don't run into this error when attempting to patch my driver, but the old patch doesn't have the driver that I need to patch. 470.199.02 auto downloaded when I upgraded Unraid, and now I can't patch my driver.

jailuthra commented 11 months ago

I hope you are tracking this issue with Unraid - because I am not working on it.

If modifying the scripts in this repo makes it work with Unraid, please feel free to make that change and send a PR.

jjslegacy commented 9 months ago

any updates on this or anyone have a fix that works?

crunchingcode commented 4 months ago

Small update to this. I was randomly searching to see if I could figure this out, I landed on this github issues thread: Ponce/slackbuilds#60 in particular, this issue: Ponce/slackbuilds#60 (comment)

Running those steps lets both scripts run normally but i'm not sure if it actually fixed the issue but it at least makes those error messages go away. I do notice that the error messages still come up during unraid boot but.... I don't know.

I tried the hack and the patch goes through without issues but when I test inside the plex container using the patch-tester.sh I get the following [AVHWDeviceContext @ 0x56273f05fd80] cu->cuMemAlloc(&data, size) failed -> CUDA_ERROR_OUT_OF_MEMORY: out of memory [AVHWDeviceContext @ 0x56273f05fd80] cu->cuMemAlloc(&data, size) failed -> CUDA_ERROR_OUT_OF_MEMORY: out of memory [hwupload @ 0x56273f98d380] Failed to allocate frame to upload to. [vf#0:0 @ 0x56273f005b40] Error while filtering: Cannot allocate memory Failed to inject frame into filter network: Cannot allocate memory Error while filtering: Cannot allocate memory [out#0/null @ 0x56273f043540] video:788kB audio:0kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: unknown [out#1/null @ 0x56273f953840] video:10011kB audio:0kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: unknown [out#2/null @ 0x56273f970c40] video:10021kB audio:0kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: unknown [out#3/null @ 0x56273f98ddc0] video:10012kB audio:0kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: unknown [out#4/null @ 0x56273f9aaf00] video:10012kB audio:0kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: unknown [out#5/null @ 0x56273f9c80c0] video:10012kB audio:0kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: unknown frame= 1250 fps= 78 q=8.0 Lq=9.0 q=9.0 q=9.0 q=9.0 q=9.0 size=N/A time=00:10:29.32 bitrate=N/A speed=39.3x
Conversion failed!

based on the info from the patch-tester this means it failed.

I'm also running 550.90.07 on a NVIDIA GeForce GTX 1660 and after the hack both patches (regular and fbc) succeeded without any errors.

edit @jailuthra the patch-tester says "But if the ffmpeg starts to work and shows:" frame= 560 fps=329 q=8.0 Lq=8.0 q=8.0 q=8.0 size=N/A time=00:00:22.40 bitrate=N/A speed=13.2x

So I see this line for a bit and it looks to be decoding but then the error messages above show up after about 15 seconds when the patch-tester exits. I assume that still means a failure.