Announcement
Collapse
No announcement yet.
Ubuntu 21.04 - X.Org vs. Wayland Linux Gaming Performance
Collapse
X
-
In a nutshell: Xorg is less buggy, has more features, more drivers, and performs better as of April 2022.
-
wayland is years of work to have on par or worse performances. seems not very good to me
Leave a comment:
-
Originally posted by dpeterc View PostYou have picked a bad example. The basic idea of Xprint extension is sound, it allows rendering with X11 toolkit at printer native resolution, with saving in Postscript, PC5, Bitmap... Basically, it allows off-screen rendering.
https://gitlab.freedesktop.org/xorg/xserver-xprint yes xprint was removed from the X.org server mainline and made into its own server build. Why there are horrible legacy applications that need it even today. Yes its buggy with modern X11 servers.
Do notice you are needing to build libXfont different to normal to use xprint. This now means you need a font server that is not part of current day X11 server as well....
Originally posted by dpeterc View PostIt is an EXTENSION, and every X11 application should use XQueryExtension() to see if it can use it or not. If the extension is not present, the application should work without it.
Xprint is a lot better example than you are giving it credit to the zoo problem. Xprint is one for extentions that demos why we need a proper defined server stacking that works with opengl acceleration. Yes in time there will be needs for custom versions of XWayland so particular programs work. Like a custom version of XWayland to support Xprint with font server enabled only has to have that overhead for the applications that really need it.
Originally posted by dpeterc View PostSo this proves just the opposite, how X11 has grown in functionality with extensions, but also that it can be slim, since rarely used extensions can be removed.
Not the zoo of insanity that you describe.
Yes wayland design to have extentions is also to allow it to be slimmed down. The X11 developers behind wayland had learnt from X11 that you need to be able to provide full feature next to slimmed down this means you need to be able to run more than 1 Wayland compositors/X11 servers so stacking is a important feature. This leads us to the Nvidia teeth pulling process.
Yes Wayland with XWayland on top forces Nvidia to have to support a stacked solution if they want Wayland support going forwards because people need XWayland for some legacy applications.
Originally posted by Azrael5 View PostThe first problem can be faced excluding the non-compliant hardware from the progress, such as Ubuntu has made avoiding that Wayland environment be applied when an Nvidia card runs the system, the second matter deals with the various linux team programmers which are involved in the transitional phase.
There has been a need for a show down with Nvidia for not providing Linux and Unix and BSD users with the functionality they should have for a very long time.
Leave a comment:
-
Originally posted by dpeterc View PostYou have picked a bad example. The basic idea of Xprint extension is sound, it allows rendering with X11 toolkit at printer native resolution, with saving in Postscript, PC5, Bitmap... Basically, it allows off-screen rendering.
It is an EXTENSION, and every X11 application should use XQueryExtension() to see if it can use it or not. If the extension is not present, the application should work without it.
For various reasons, Xprint extension never got popular, and in was subsequently removed from X.org.
So this proves just the opposite, how X11 has grown in functionality with extensions, but also that it can be slim, since rarely used extensions can be removed.
Not the zoo of insanity that you describe.Last edited by Azrael5; 05 May 2021, 04:43 AM.
Leave a comment:
-
Originally posted by oiaohm View PostX11 protocol is a zoo of insanity remember the Xprint stuff that was printer over X11 protocol. The reality is the modernday X11 bare metal you use in fact implements less than 1/4 of what is written in the X11 protocol. Yes 1/2 were removed by a process of intel developer who was lead of X11 bare metal breaking feature if no one notice removing it. Yes the 1/4 were never implemented in x.org version of the x11 server.
It is an EXTENSION, and every X11 application should use XQueryExtension() to see if it can use it or not. If the extension is not present, the application should work without it.
For various reasons, Xprint extension never got popular, and in was subsequently removed from X.org.
So this proves just the opposite, how X11 has grown in functionality with extensions, but also that it can be slim, since rarely used extensions can be removed.
Not the zoo of insanity that you describe.
Leave a comment:
-
Originally posted by birdie View Post@Again, I'll try Wayland in Fedora 35 or 36 or when Wayland developers remove their ears out of their arseholes and write a graphical server which implements the basic desktop features and makes compositors largely redundant and irrelevant..
There is a need for the fragmentation. We need graphics drivers to be wayland compositor/X11 server netural. There have been cases where distributions have had to delay deploying updated x11 bare metal because Nvidia need to release a new driver because they were hooked so deeply in.
birdie like or not there is a need for better security and drivers to be implemented supporting that security. The reason why you cannot swap compositors on the fly is a security that you ignore. The ablity to random probe the GPU allocated buffers to access internal buffers of other applications.
The reality is you want another broken like X11 server solution the reality is the enterprise developers are not going fun this. With there desktop requirements of security this does not pass go.
Originally posted by birdie View PostI want a single configuration (monitor, input, keyboard layout, acceleration) for all Wayland sessions
Originally posted by birdie View PostI don't want to choose apps based on which compositor they support
Wayland protocol include means to stack compositors on top of compositors due to the past commercial applications problems with X11.
birdie you see your problems but totally have your head in the sand for the problems the Wayland developers being enterprise developers have run into.
Yes nvidia drivers being locked to X11 server results in not being able to stack X11 servers. Yes one of the objectives of XWayland is in fact to be able to run multi versions of XWayland possible versions customised for particular trouble making apps that don't update because of the past problems that you are head in sand about.
- Likes 1
Leave a comment:
-
@oiaohm
I don't hear you dude!
Broken outdated X.org works perfectly for me right now and I'm not afraid to lose the running applications, in fact I don't remember an X.org session crashing on me for the past ten years.
Modern proper Wayland 1) has crashed on me in less than ten minutes of using it under God-bestowed Intel graphics 2) Doesn't allow to swap compositors on the fly 3) Has numerous critical bugs in Fedora 34 (which are not Fedora specific as Fedora out of all Linux distros just like Slack has stopped heavily patching source packages).
Again, I'll try Wayland in Fedora 35 or 36 or when Wayland developers remove their ears out of their arseholes and write a graphical server which implements the basic desktop features and makes compositors largely redundant and irrelevant. I want a single configuration (monitor, input, keyboard layout, acceleration) for all Wayland sessions, I don't want to choose apps based on which compositor they support - this is fucking madness.
I don't want to hear why Wayland could be better. It must be better or bugger off.
Over and out.
Leave a comment:
-
Originally posted by birdie View PostShow me a single wayland compositor, which when dies, doesn't bring all the applications down with it. Are there any? None? Well, bugger off with your projections and ideas. In X.org/Windows I can kill my display manager a million times over and everything will work, under your "brilliantly" designed Wayland everything is hanging by the thin thread.
Originally posted by birdie View PostAnd what about all those APIs which each poor Wayland compositor has to implement? And then user space applications have to support the zoo of differently implemented basic bloody APIs available under all other sanely designed OSes? Why doesn't this madness exist under X.org or Windows? I'll tell you why, your brilliant Wayland designers decided Wayland is just a half-assed protocol which necessitates the implementation of basic bloody features on top of it.
The reality Wayland is in fact less of a half assed protocol than X11.
Phoronix: GNOME's Mutter 40 Alpha Released With Big Improvements In working towards the March release of GNOME 40, the Mutter compositor / window manager is out today with its 40 Alpha release... http://www.phoronix.com/scan.php?page=news_item&px=GNOME-Mutter-40-Alpha
Yes this old post covers some of how badly half assed the current contained bare metal X11 protocol copy paste is. This goes on for many features. This does explain why many toolkits on X11 end up rendering by opengl instead of using native X11 protocol.
Originally posted by birdie View PostLet's stick to the known facts. I admit I was wrong about the effing systray, yet, you see, not entirely, since once a Wayland compositor is down, all the running applications are down, so even though technically the systray is implemented via D-BUS or whatever and kinda sorta alive, if there are no applications running, there's no effing systray!
The reality here the system tray and other parts with wayland have been designed to use dbus on the theory that the wayland compositor will be able to be restarted. Problem we need the video drivers to-do that always. So that toolkits don't have to include the bail when wayland compositor goes away and restarts.
The reality here birdie if X11 protocol was working correctly as designed you should be able kill the X11 server and restart it without application dieing as well. There is a historic driver issue here that need fixing. Not just hey lets just run a server to mask over a driver design fault for the next 30 years.
The bad point here after the nvidia drivers are fixed we are going to need a wayland version of https://xpra.org/ . The Wayland compositor going down stoping Xwayland there could still be a X11 application using the modern dbus systemtray still connected because its behind xpra.
Reality here X11 server is broken in this point and is also broken due to bad drivers. The toolkit developers work around this with hey X11 server goes away lets just terminate the application as well.
birdie you keep on talking about the windows manager and compositor restart. History of X11 server the X11 compositor has not always been restratable without killing all opengl applications. The x11 server is not restartable without killing all applications not because the X11 protocol says that has to happen due to bad drivers that is what end up coded in toolkits.
This is something that should have been fixed over 30 years ago. We should have been able to restart X11 server and keep all our applications for over 3 decades now.
- Likes 1
Leave a comment:
-
Originally posted by oiaohm View Post
This is you being wrong. The system tray under Wayland is done by a dbus protocol. So the compositor can in theory die and that keep on working if that has been implemented as a ind-pendant process. There are cases with different X11 windows managers/compositors out there were the systray is not independent to the compositor or windows manager. Most of the extra features under wayland are implemented over dbus so its optional for those to be build into the compositor.
Applications under Wayland can choose if they die when the compositor goes away or if they keep on running until new compositor starts.
https://bugreports.qt.io/browse/QTBUG-85631 this bug here. Applications can choose when a compositor goes away to crash, exit or wait with wayland. Problem here toolkits for Wayland are choosing to exit when compositor stops not because Wayland protocol says they have to. Why this is has nothing to-do with Wayland has everything to-do eglstreams.
eglstreams has a horrible property that when compositor stops everything the compositor allocated goes away. So keeping on running after a compositor has stopped and restarted is not possible with the Nvidia eglstreams. Now lets look at the GBM of mesa. GBM is per process so compositor goes away the allocations on the GPU for applications remain. So application can keep on rendering and working with the GPU with GBM while the Wayland compositor is down if they choose to.
If Nvidia finally support proper per process allocations on the gpu with their DMA BUF support this will allow toolkits to move from exist when noticed the wayland compositor has gone away to wait for a time out before going away so allowing a compositor to be restarted or changed without disrupting application state.
The reality here you don't need a X11 server to allow applications to continue to run without a compositor. We do need GPU drivers not to sabotage applications that decide to keep on running without a compositor. Yes historic Nvidia drivers under X11 with compiz had the same problem that you would stop compiz and all your applications using opengl would start segfaulting because the GPU buffers had pulled the disappearing act so this is not a protocol problem this is a driver problem coming from one particular vendor then working way up the complete stack.
Show me a single wayland compositor, which when dies, doesn't bring all the applications down with it. Are there any? None? Well, bugger off with your projections and ideas. In X.org/Windows I can kill my display manager a million times over and everything will work, under your "brilliantly" designed Wayland everything is hanging by the thin thread.
And what about all those APIs which each poor Wayland compositor has to implement? And then user space applications have to support the zoo of differently implemented basic bloody APIs available under all other sanely designed OSes? Why doesn't this madness exist under X.org or Windows? I'll tell you why, your brilliant Wayland designers decided Wayland is just a half-assed protocol which necessitates the implementation of basic bloody features on top of it.
Which again brings us back to the fact which I've repeated ad neaseum now, Wayland is a complete clusterfiasco for minor projects which don't want to write a metric ton of code to support it. And then your effing reference implementation which is Weston has glaring bugs and missing features (e.g. no task bar) right effing now. We're now more than a decade into Wayland development. Now that I've seen your ramblings without being logged on and I'm back to BL'ing you 'cause I don't need total crap like "Applications can choose when a compositor goes away to crash, exit or wait with wayland" instead of arguments. This is not implemented in any shape or form and I'm not even sure you're not BS'ing me right now because you're the only person under the Sun who has claimed that, so, stop, ok? You're a great Wayland theorist, while I'm a poor practician who sees crap for what it is.
Oh, and all the Wayland compositors currently have different ways of setting them up, for crap's sake!! Monitor configuration, input and language configuration, etc. etc. etc. Again an idiotic zoo no one needs.
Let's stick to the known facts. I admit I was wrong about the effing systray, yet, you see, not entirely, since once a Wayland compositor is down, all the running applications are down, so even though technically the systray is implemented via D-BUS or whatever and kinda sorta alive, if there are no applications running, there's no effing systray!
I will continue to avoid this disaster until Wayland developers get their act together and implement something akin to the Xorg server - something which provides rich APIs, and delegates compositors to shiny window decorations, effects, etc. like it's done in all decent reliable operating systems.
I've avoided the use of the F word this time around because I don't want trigger happy moderators to delete the post just because I have lots of haters here.Last edited by birdie; 02 May 2021, 07:03 PM.
Leave a comment:
-
Originally posted by oiaohm View Post
We know why Nvidia was doing what they were doing. Its market segmentation. The features wayland compositor developers are after with GBMand DMABHUF wants with applications having their own individual allocations with security will allow splitting consumer gpu between multi end users with security. Nvidia with glstreams wanted to keep the X11 status que of a shared buffer stack so no security. So you wanted to split a GPU between many users with security you would have to buy the higher end cards with Nvidia.
Same with Nvidia making windows drivers that would intentionally break when they detected a VM.
Its not that Nvidia was boycotting Linux users they were wanting to restrict the functionality of their cards so they could charge Linux and Windows users more money to have particular features when the cheaper cards had all the performance those users in fact need. Company greed can be a pain in the ass.
I'm one of the owner of the first Physx cards sold by Ageia (the company subsequently acquired by Nvidia).Last edited by Azrael5; 02 May 2021, 04:57 PM.
Leave a comment:
Leave a comment: