-
Notifications
You must be signed in to change notification settings - Fork 60
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Issue after upgrading to 525 series drivers #126
Comments
There is another thing, running
|
Sorry, forgot to comment on this the other day. I've raised this issue on the NVIDIA forums, as I don't think it's an issue on our side. |
@elFarto Could you please share the link of your issue on the NVIDIA forums? |
Sure, it's here. |
Seems like same issue persists in 525.60.11 version as well. |
Since they let it slide, I've also raised the issue on their open repository. |
As a workaround, the |
Nice! The |
Unfortunately that didn't do it for me. Perhaps I'm missing out on something? |
Unfortunately when I try direct backend, I got
In strace, I see
|
Not sure if related, but encoding works in OBS but Decoding is broken:
Uninstalling nvidia-vaapi-driver fixes OBS and decoding starts to work again. |
The direct backend is very experimental, and hasn't seen a lot of testing, so your mileage may vary. I'm going to have a look into if there's a way around the original issue, but I'm not holding out much hope. |
I can't seem to find anyway to get it to work. I have push a small fix to master to let the driver fail gracefully, rather than just exiting the process when it encounters this error. This should let applications like Firefox or MPV not crash or log error messages when it happens and gracefully failover. |
I am having loads of issues with the latest 525 drivers. hardware acceleration in electron apps are broken (discord, pomotroid, etc) and on top of these issues too. Might just rollback to 520 and stay on there until these issues are fixed. EDIT: seems the electron problems seem to be related to the nvidia vaapi driver. After updating to the latest git I am able to use discord with hardware acceleration and I no longer get the |
Since Nvidia implemented GBM, I think they deprecated EGLStream. |
Is it worth merging the direct-backend into master as a separate mode? Might be dealing with this for a while. |
Potentially, but I was still undecided if releasing it is a good idea. It feels like it's going to be a pain to support long term. |
I think it's worth implementing a GBM backend since |
As far as I know, that's not possible, as there's no GBM <> CUDA/NVDEC interoperability. We use the EGL/direct backend to be able to get frames out via a DMA-BUF. With EGL we can export from CUDA -> EGL -> DMA-BUF. With the direct backend, we can talk to the driver to create the image and then import it into CUDA and export to a DMA-BUF. |
Is it possible to use Vulkan instead of EGL? |
i can't tell you how happy i am i found this issue i've been pulling my hair out trying to understand what i did wrong turns out it was just a problem with the nvidia driver, sincerely go fuck yourself nvidia. |
Maybe. Newer drivers support dma-buf import/export for buffers in vulkan. The complexity is that the buffer has to export to cuda as opaque fd and to the vaapi client as dma buf. I'm not sure you can export a buffer twice in two formats. There's also a bunch of work you need to do with semaphores to ensure consistent access. If I was going to experiment with this, I'd use libplacebo as it wraps a lot of the vulkan overhead. And of course, one could equally use full OpenGL as the buffer allocator to replace eglstreams. |
The direct backend has now been merged into the master branch. If everyone could give it a test, that would be much appreciated. |
I may have completely corrupted something. I rolled back to driver 520.56.06, but it still tries to use direct backend and gives DRM error.
EDIT: I rolled back to 6e8b0d0 and it works for me now. |
Ok, looks like it is possible for an X11 display to pass in a DRM fd. It's using DRI3 to open an fd and pass it into us. I've pushed an update to the DRM fd check to really lock down when we handle it. |
Edit: direct backend worked for me. |
The latest commit works for me, I see mpv in nvidia-smi and DEC in nvtop when using However, after many rounds of comparison, I found that nvidia-vaapi-driver is not available for Optimus systems at all. I also get high CPU and integrated graphics 3D usage while the NVIDIA graphics card is decoding the video. This is true even for previous 520xx drivers where I drew the wrong conclusions. On Windows with DXVA2 hwdec I only got 6% integrated graphics 3D usage, while on Linux with NVIDIA vaapi driver I got 98%. I'm also sorry for the multiple sloppy replies I just posted, I've now deleted them. I may need to open a new issue or continue this topic in #11. |
Direct backend works for me on 1650Ti mobile GPU. Tested with Firefox and MPV. VLC never worked even with |
After a reboot I got:
|
Please post the output with |
I can confirm the error on vainfo, using 4029d45 (but video playing on Firefox is perfect):
|
I've merged in #137, which should do better when manually having to open the DRM device. |
Will post the output if I got this issue again. Today morning it is working. I am not sure what is causing this. Thank you.
Why is there |
Download latest git |
I found Chrome failed to use hardware acceleration after upgrading NVIDIA driver to 525. Following the comments above, I'm able to make it work again! Here's the procedure:
My GPU: RTX 3080 |
Can also confirm that
CPU usage of the
CPU usage of the
More system information:
|
Just coming in to verify that the direct backend from current git through AUR works for me on desktop 3060 Ti, driver 525, video decoding working on Librewolf. Using an Arch system on Kernel 6.0.10, Plasma 5.26.4. |
Now works with 525.60.13 / RTX A4000 / kernel 6.1.0 |
Oddly enough, direct mode doesn't work for me, even with the correct environment variables set up.
Output of
I also tried recompiling the driver using headers extracted with the |
This output is only printed with the egl backed, so you're not correctly selecting the direct one. |
The |
Upon further inspection, it looks like libva was loading a different version of the driver from |
Thanks for all your feedback! I'm going to close this issue now that v0.0.8 has been released. |
Working perfectly with System: vainfo:
nvidia-smi pmon: (4K/30fps YT)
RDD Process ~1% CPU |
Process to get everything running on Wayland, my laptop is an Optimus however it has a mux and I run it in Ultimate mode (essentially the Intel is only a passthrough for the display, the Nvidia is the card in use all of the time.
First the package on the AUR is orphaned and out of date, you MUST pull the latest version and build it manually (or just edit the PKGBUILD and change the build string) /etc/environment
Firefox about:config
After all that source /etc/environment (or more sensibly just reboot) then nvidia-smi
|
I use nvidia 530 If only installed libva-vdpau-driver-vp9-git, maybe only detected x11 and even throw segmentation fault after saying 'Failed to create dedicated X11 display!' env $ pacman -Qs nvidia
local/egl-wayland 2:1.1.11-3
EGLStream-based Wayland external platform
local/libvdpau 1.5-1
Nvidia VDPAU library
local/nvidia-open-dkms 530.41.03-1
NVIDIA open kernel modules
local/nvidia-utils 530.41.03-1
NVIDIA drivers utilities
local/nvidia-vaapi-driver-git 0.0.9.r7.gc0a7f54-1
A VA-API implemention using NVIDIA's NVDEC vainfo $ vainfo --display drm --device /dev/dri/renderD128
Trying display: drm
vainfo: VA-API version: 1.17 (libva 2.17.1)
vainfo: Driver version: VA-API NVDEC driver [egl backend]
vainfo: Supported profile and entrypoints
VAProfileMPEG2Simple : VAEntrypointVLD
VAProfileMPEG2Main : VAEntrypointVLD
VAProfileVC1Simple : VAEntrypointVLD
VAProfileVC1Main : VAEntrypointVLD
VAProfileVC1Advanced : VAEntrypointVLD
VAProfileH264Main : VAEntrypointVLD
VAProfileH264High : VAEntrypointVLD
VAProfileH264ConstrainedBaseline: VAEntrypointVLD
VAProfileHEVCMain : VAEntrypointVLD
VAProfileVP8Version0_3 : VAEntrypointVLD
VAProfileVP9Profile0 : VAEntrypointVLD
VAProfileHEVCMain10 : VAEntrypointVLD
VAProfileHEVCMain12 : VAEntrypointVLD
VAProfileVP9Profile2 : VAEntrypointVLD |
I have amd-cpu + nvidia-gpu(gtx 1660ti)
When I try to play 4k(h264) video with vlc I get:
no matter NVD_BACKEND=direct or egl, result is the same |
This driver is specifically designed to work with Firefox/FFMPEG. It's not really intended to be used with VLC (as that can just use NVDEC directly). Chrome/Chromium support won't be for a while, there are several blockers that prevent it from working at the moment. |
I'm trying to use the direct backend on arch (with
|
Hi there,
After updating to 525.53 (proprietary) driver, I am unable to get hardware acceleration.
Console output
From the actual vaapi.log I got a different output
vaapi.log
It works in case a revert the update.
(side note, choosing media.rdd-ffvpx.enabled=true/false makes no difference)
OS: CachyOS x86_64
Kernel: 6.0.8-1-cachyos-pds
DE: Plasma 5.26.3
GPU: NVIDIA GeForce RTX 2060 Mobile
GPU: Intel CoffeeLake-H GT2 [UHD Graphics 630]
The text was updated successfully, but these errors were encountered: