Originally posted by skeevy420
View Post
Announcement
Collapse
No announcement yet.
Mesa 24.1 Merges Vulkan Support For Wayland Explicit Sync
Collapse
X
-
Originally posted by Noitatsidem View PostFinally. Seeing how rapidly explicit sync is getting taken care of now that Wayland has finally adopted it is really exciting.
Just goes to show that Nvidia's decade long blockade was massively harmful. This sort of Wayland feature acceleration could have, should have accelerated a long time ago. The insult on top of the injury is that Nvidia ended up on GBM anyways. So what was it all for, in the end? They could have been the ones to make this patch instead of waiting for Valve to do it.
- Likes 24
Comment
-
Originally posted by ezst036 View PostThey could have been the ones to make this patch instead of waiting for Valve to do it.
Totally loony Linux-fanatic fairy tale on Phoronix forums, as usual...
- Likes 1
Comment
-
Originally posted by ezst036 View PostSo is this the fix (or at least a big part of it) to the long-standing known problem within GBM implicit sync?
The one EGL Streams was supposed to fix but Nvidia wouldn't properly support EGL Streams for the long term?
GBM implicit sync is design to work next to GBM explicit sync. That was one of the problems with EGLStreams is when you had to mix implicit and explicit sync it was not meant to do that.
One of the worst problem is explicit sync memory management with EGLStreams. This resulted in having one application free allocated GPU memory and another application that memory was shared with attempt to access that memory then segfault. This is too much explicit sync.
GBM/DMABUF you have memory only freed once the last application stops using it. This is more a implicit sync version of memory management.
Nvidia pushed explicit sync as the magic solve all solution with EGLStreams turns out like or not you need some things to be implicit sync to prevent horrible problems like applications segfault for no particularly good reason.
The trick is getting the correct balance between implicit and explicit sync to get the most performance while not making the system likely to be highly unstable. EGLStreams take step into highly unstable.
The proprietary NVidia driver now supports gbm, which vastly improves the user experience. For older devices that will not get gbm support dropping EglStreams will likely not have...
2 years ago Nvidia developer signed off on removing EGLStreams from KDE after Nvidia invested lots of money attempting to make the failed project work.
- Likes 11
Comment
-
Originally posted by ezst036 View Post
Just goes to show that Nvidia's decade long blockade was massively harmful. This sort of Wayland feature acceleration could have, should have accelerated a long time ago. The insult on top of the injury is that Nvidia ended up on GBM anyways. So what was it all for, in the end?
Originally posted by ezst036 View PostThey could have been the ones to make this patch instead of waiting for Valve to do it.
NVidia may have not physically written the patch, but if you actually bothered to follow what was going on they spent significant time providing feedback and insights during the design and nailing down of technical details.
- Likes 2
Comment
-
Originally posted by mdedetrich View PostIt was Linux/graphics driver devs that was blocking/stonewalling explicit sync for a decade, not NVidia, why do you think that NVidia created EGLStreams?
Phoronix, Linux Hardware Reviews, Linux hardware benchmarks, Linux server benchmarks, Linux benchmarking, Desktop Linux, Linux performance, Open Source graphics, Linux How To, Ubuntu benchmarks, Ubuntu hardware, Phoronix Test Suite
EGLStreams comes in fact after the first explicit sync on Linux.
Originally posted by mdedetrich View PostNVidia may have not physically written the patch, but if you actually bothered to follow what was going on they spent significant time providing feedback and insights during the design and nailing down of technical details.
Like or not if in 2014 Nvidia had sucked it up and worked with mesa3d yes this is work with the other GPU vendors we would not have had half the problems.
The big thing is that the Linux kernel development wanted to obey the rule do not break userspace. GBM/DMABUF version of explicit sync support allows implicit and explicit sync to both function with each other. Yes using implicit sync you most likely take a minor performance hit but it still works.
Nvidia with Eglstreams wanted to go Explicit sync only. This leads to the issue of where one process frees memory and another segfaults because it not in sync with the other application.
The correct answer is a mix between explicit sync and implicit sync that the AMD/Intel/ARM... fairly much every other GPU maker other than Nvidia was trying to make.
Nvidia does not always get everything right. Eglstreams is one of the examples where Nvidia got it badly wrong.
I would not say that the Linux kernel developers who are from other GPU vendors were stone walling Nvidia but they were seeing where a pure explicit sync solution could not work and Nvidia was stubbornly not listening to the problems. Took basically 6+ years to get Nvidia to listen as in 2020 when Nvidia developers worked out Eglstreams could never work.. Now we have the clean up from the forked development and other things the eglstreams mess caused.
- Likes 10
Comment
Comment