it seems to have a lot of goodwill with many important developers in the Free Desktop ecosystem
Announcement
Collapse
No announcement yet.
Wayland 1.0 Stable Release Is Imminent
Collapse
X
-
Originally posted by makomkIn other words, we don't actually have any benchmarks to show that Wayland compositing is actually low-overhead, and even if we did it wouldn't matter since Wayland's OpenGL support is incapable of running most games.
Comment
-
Originally posted by renox View PostI am NOT talking about an application which is stalled, just an application which is slow to handle events.
Wayland sees that an app is stalled, by checking to see if it responds to events quickly. If it fails, the compositor can take over.
Checking that event handling is probably just as fast as going through the whole X chain, and then hoping that X or the window manager isn't slow to respond itself.
Originally posted by makomk;In other words, we don't actually have any benchmarks to show that Wayland compositing is actually low-overhead, and even if we did it wouldn't matter since Wayland's OpenGL support is incapable of running most games.
Comment
-
Not so sure!
Originally posted by smitty3268 View PostThere's no difference.
Wayland sees that an app is stalled, by checking to see if it responds to events quickly. If it fails, the compositor can take over.
I doubt that the timers for the compositor are small otherwise it'll keep showing "busy" application which is annoying for users, but an user moving a window will see a delay if the application pause more than 1/60s!
The ironic part is that moving a stalled window can be smoother than moving a "normal" window because moving a stalled window can be done fully in the server whereas with Weston moving a normal window needs a roundtrip.
Comment
-
Originally posted by renox View PostIn theory an application slow to handle event can be slow enough that moving window feels jerky/laggy but fast enough that the compositor won't take over.
I doubt that the timers for the compositor are small otherwise it'll keep showing "busy" application which is annoying for users, but an user moving a window will see a delay if the application pause more than 1/60s!
Comment
-
Originally posted by renox View PostI totally disagree: I prefer responsiveness over prettiness.
When there is a separated window manager, if the application becomes busy, you can still draw the window outlines so the resizing still feel responsive (even if the content of the window becomes ugly),
, with Weston this won't be the case, the window will freeze resizing until the application answer again..
Originally posted by renox View PostThe only way to have both is to ensure that the application is never busy by using multithreading, very,very nice when you have it but a big change.
Originally posted by renox View PostAnd what about moving windows?
Here, client side management of decorations looks even worse compared to server side management of decoration (except when the application is multithreaded)!
But there's no difference in client vs. WM decorations here at all, because the decorations are never relayouted or redrawn.
Comment
-
Originally posted by daniels View PostWeston is perfectly capable of doing outline resizes, and I'm not sure why you think it isn't.
Originally posted by daniels View PostStill doesn't help if the app's waiting on I/O because everything got paged out.
Originally posted by daniels View PostHow? Again, it's more fluid because the compositor moves the window directly and doesn't even need to tell the application ever.
Originally posted by daniels View PostWith X11, the pointer event goes to the window manager, which then tells the server where to move the window. Removing the round trip can only help.
With server side window management (which Weston doesn't do normally i.e. unless it decides that the application is stalled), the application doesn't need to be the loop when it is moved, whether it is best to have the window manager
in the display server process or in a separated process is a different implementation issue.
Originally posted by daniels View PostBut there's no difference in client vs. WM decorations here at all, because the decorations are never relayouted or redrawn.
Comment
-
Originally posted by daniels View PostIt's not 100%, since there is no acceptable solution to 'my app doesn't respond quickly to resize requests', but vastly better than before.
The Wayland model is that the app tells the compositor to initiate a resize sequence, at which point the compositor just starts feeding the app resize events as appropriate. The then app sends the window with decorations already drawn, which is always safe to draw on screen. We've cut out a huge amount of the round trips and lag inherent in the X11 model, where the server would send a pointer update to the client, who would request a resize from the server, which would ask the WM what it thought; the WM would then paint a new frame and resize both its frame window and the real client window; the server notifies the app of a resize, at which point the app can finally draw its content. I left out all the app -> X server -> WM -> X server -> app roundtrips for synchronisation through window properties too - it looks even worse if you add those in.
So yeah, I maintain that the problem's solved as well as it could be.
Ooops, either I misread the documentation or there is a need of better documentation..
Comment
Comment