Announcement

Collapse
No announcement yet.

Mesa 24.1 Now Supports Vulkan Explicit Synchronization On X11

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • mSparks
    replied
    Originally posted by Myownfriend View Post

    What the fuck are you smoking?

    You know what. Just link me to where you got that information. Where in the Wayland protocol does it say that?



    "Since the contents of the compositor’s output frame depend on the contents of each visible surface, the former cannot complete before the GPU finishes drawing to each of the picked surface buffers

    If the GPU does not finish drawing in time for the next display refresh cycle, the compositor’s output frame misses that cycle and is delayed by at least the duration of one refresh cycle. "


    Since the contents of an X11 compositor does not depend on each visible surface, this was never a problem on X11, all that was left up to the GPU driver which provided the surfaces. with the X11 "damage" protocol handling any overwriting iirc.
    Last edited by mSparks; 18 April 2024, 01:36 PM.

    Leave a comment:


  • duby229
    replied
    Originally posted by mSparks View Post
    X11 compositors couldnt
    X11 applications using a vulkan surface always could.


    X11 gives applications their own surface to render on completely aysnchronously.

    wayland by design prevented that by making every application wait on the longest thread, effectively turning everything running in the entire desktop environment into a single threaded application.



    Yes, up until a few months ago, nvidia was evil for not implimenting wayland implicit sync on their proprietry - always explicit sync X11 driver and wayland was the best for its "every frame is perfect", approach aka waiting for every application to finish rendering before drawing a frame then allowing any of them to start their next frame.

    It has taken 15 years to get here, but now it is slowly sinking in that all the "bad things" about X11 that wayland was supposed to fix were better than the choices made by wayland devs from the beginning.
    ^^^ Again this

    I don't think a simple upvote is enough, so this is a reply just top say, Yup fo sho.

    Leave a comment:


  • Myownfriend
    replied
    Originally posted by mSparks View Post
    X11 compositors couldnt
    X11 applications using a vulkan surface always could.
    Because Vulkan uses explicit sync. That has nothing to do with the surface itself. The surface is just a DRM surface, whether Vulkan, OpenGL or something running on the CPU filled it is irrelevant.

    Originally posted by mSparks View Post
    X11 gives applications their own surface to render on completely aysnchronously.
    Yea it's done that since DRI 2.0 which is by the same guy who came up with Wayland. That's exactly how Wayland works, too, but since X11 only works with pixmaps directly, the DRI 2.0 extension has to map and convert pixmaps to DRM buffers. Wayland doesn't need to do that, it just works with DRM buffers directly.

    Originally posted by mSparks View Post
    wayland by design prevented that by making every application wait on the longest thread, effectively turning everything running in the entire desktop environment into a single threaded application.
    What the fuck are you smoking?

    You know what. Just link me to where you got that information. Where in the Wayland protocol does it say that?

    Originally posted by mSparks View Post
    Yes, up until a few months ago, nvidia was evil for not implimenting wayland implicit sync on their proprietry - always explicit sync X11 driver and wayland was the best for its "every frame is perfect", approach aka waiting for every application to finish rendering before drawing a frame then allowing any of them to start their next frame.
    The "every frame is perfect" thing has nothing to do with implicit sync or explicit sync. And yes, the issues with XWayland on Nvidia had to do with Nvidia not supporting implicit sync. The whole Linux graphics stack was implicit sync except for Vulkan so they absolutely should have supported implicit sync years ago. That's not all that they should have supported years ago, DMA-buf, GBM, Gamma LUT, and bunch of EGL commands that have existed for like 20 years should all have been implemented years ago.

    People were right to blame Nvidia for those issues. But like I showed you, many people have been working to transition things to explicit sync for years, it's not a new thing that was done in the last few months after relenting to Nvidia.

    Originally posted by mSparks View Post
    It has taken 15 years to get here, but now it is slowly sinking in that all the "bad things" about X11 that wayland was supposed to fix were better than the choices made by wayland devs from the beginning.
    Are you trying to make it look like it's Wayland's fault that the entirety of the Linux graphics stack is finally moving to explicit sync? Wayland has had an explicit sync protocol since like 2017 it just couldn't be used when everything else was implicit. You really don't have any idea what the fuck you're talking about.

    Leave a comment:


  • Weasel
    replied
    Originally posted by Myownfriend View Post
    Well that's definitely not true. There's a reason that an explicit sync protocol was added to X11 as well. It couldn't do it. The entire Linux graphics stack was implicit sync only and that's includes X11.
    Nvidia driver on X11 was always explicit sync, since it didn't support anything else. That change is for XWayland/Mesa (i.e. other drivers, but those drivers support implicit sync so it was not a blocker).

    The point is that it has worked for decades and you see Wayland clowns (not you, I mean the other ones I had to reply to) act like this is the second coming of Jesus as if X11 on Nvidia didn't have it for decades now. It's basically hilarious.

    If you have a driver that supports implicit sync it's unlikely you'll see a difference, unless you're a hardcore gamer, but if you are, then you should be using Nvidia regardless. Deal with it.

    Leave a comment:


  • Weasel
    replied
    Originally posted by dragon321 View Post
    Every modern graphics stack is built around explicit sync, it is superior in any possible way for modern hardware. I guess that doesn't matter for X11 loyalists, since they believe that over 30 years old protocol is still the best then there is no reason why would they care about graphics stack doing sync like in the 80's and believe it is still good design.

    I have to admit the way how X11 loyalists think: "I don't know why this is bad but since it is modern and Wayland does it then it has to be bad." is quite interesting.
    I was talking about the driver.

    I wonder what part of it supporting it for decades you still don't get?

    I have to admit the way how Wayland buffoon loyalists think: "I love that this crippled garbage Wayland finally got something that X11 with Nvidia drivers had for decades, but since it's for Wayland it's shiny and new and X11's use of it is from the 80s. I'm SO gonna use it as an argument because I'm so so so smart, look at me mom!"

    Leave a comment:


  • mSparks
    replied
    Originally posted by Myownfriend View Post

    There's a reason that an explicit sync protocol was added to X11 as well. It couldn't do it.
    X11 compositors couldnt
    X11 applications using a vulkan surface always could.

    Originally posted by Myownfriend View Post
    Also where are you getting that any of this had to do with multi-threading? Where are you getting that Wayland has single threaded and X11 isn't?
    X11 gives applications their own surface to render on completely aysnchronously.

    wayland by design prevented that by making every application wait on the longest thread, effectively turning everything running in the entire desktop environment into a single threaded application.

    Originally posted by Myownfriend View Post
    Up until a few months ago? The process of transitioning things to explicit sync has been going on for years.


    Yes, up until a few months ago, nvidia was evil for not implimenting wayland implicit sync on their proprietry - always explicit sync X11 driver and wayland was the best for its "every frame is perfect", approach aka waiting for every application to finish rendering before drawing a frame then allowing any of them to start their next frame.

    It has taken 15 years to get here, but now it is slowly sinking in that all the "bad things" about X11 that wayland was supposed to fix were better than the choices made by wayland devs from the beginning.

    Leave a comment:


  • Myownfriend
    replied
    Originally posted by mSparks View Post

    Thats fine by me karen. you are welcome to keep making a big deal of it as long as you have the strength to keep yapping, but you arent going to get your way.

    I uninstalled wayland because it is a malicious pile of shit, you are just going to have to cope with that because not only is it not a big deal, it isnt going to change just because you find it stupid and unacceptable while offering nothing of substance to the discussion.
    I don't care if you uninstalled Wayland. Just keep your mouth shut about things you don't know about. It's not that difficult.

    Don't know thing == keep mouth shut

    Keep mouth shut == no look stupid

    No look stupid == make you look good

    Leave a comment:


  • Myownfriend
    replied
    Originally posted by mSparks View Post
    why would it? X11 was always multithreaded and left synchronisation up to the application- even if that meant some applications had tearing if you didn't enable vsync.
    Well that's definitely not true. There's a reason that an explicit sync protocol was added to X11 as well. It couldn't do it. The entire Linux graphics stack was implicit sync only and that's includes X11.

    DRI3 1.4 and Present 1.4 add support for explicit synchronization of GPU rendering and presentation using DRM syncobjs. Protocol spec:


    Also where are you getting that any of this had to do with multi-threading? Where are you getting that Wayland has single threaded and X11 isn't?

    Originally posted by mSparks View Post
    All that's changed is up until a few months ago implicit sync and single threaded wayland was the promised land everyone would want to replace X11 with, and now it is slowly sinking in that hypothesis was BS.
    Up until a few months ago? The process of transitioning things to explicit sync has been going on for years.


    Leave a comment:


  • mSparks
    replied
    Originally posted by Myownfriend View Post

    And I'm not lol You just used the term without know what it means and you don't want to admit you're using it wrong lol
    Thats fine by me karen. you are welcome to keep making a big deal of it as long as you have the strength to keep yapping, but you arent going to get your way.

    I uninstalled wayland because it is a malicious pile of shit, you are just going to have to cope with that because not only is it not a big deal, it isnt going to change just because you find it stupid and unacceptable while offering nothing of substance to the discussion.

    Leave a comment:


  • Myownfriend
    replied
    Originally posted by mSparks View Post

    If you don't want to be identified as a Karen, then don't behave like one.

    Simples.
    And I'm not lol You just used the term without know what it means and you don't want to admit you're using it wrong lol

    Leave a comment:

Working...
X