Skip to content
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

Be able to disable deskop composition without using fullscreen #28

Closed
nalf3in opened this issue May 8, 2019 · 8 comments
Closed

Be able to disable deskop composition without using fullscreen #28

nalf3in opened this issue May 8, 2019 · 8 comments
Labels
Idea-New PowerToy Suggestion for a PowerToy

Comments

@nalf3in
Copy link

nalf3in commented May 8, 2019

Currently, if not using fullscreen in games/rendering applications with fullscreen optimisations disabled, DWM.exe force tripple buffering on every monitor which increase a lot the latency experienced by the user. Using every app in fullscreen isn't practical and is a pita for dual monitors users. The only way I'm aware of disabling the composition in windows 10 is by disabling DWM.exe, which can (and will) cause many crashes, bsod and stange bugs everywhrere in the os. Being able to disable desktop composition like it was in windows 7 would be great.

@dxgldotorg
Copy link

I doubt Microsoft will consider this one because ever since Windows 8 DWM has been mandatory for WinRT/UWP GUI elements to be layered correctly. Microsoft would have to rewrite their UWP and/or GDI stack to pull this one off.

@dxgldotorg
Copy link

Fullscreen doesn't actually disable desktop composition but instead pauses it, this disabling all GDI elements in order to give the GPU exclusive access to the screen.

@nalf3in
Copy link
Author

nalf3in commented May 8, 2019

I see, thanks for the clarification ! However, I was under the impression that the "syncing" process wasn't a core component of the desktop window manager and more akin to an "effect" that would be applied after all the rendering was done (at least, the current implementation seems to be allowing variable refresh rates as freesync and gsync monitors users currently use that feature).

Thus, the idea would be to expose that feature to the end user along with the option of completely disabling triple buffering with the current implementation of dwm rather than replacing or disabling it completely.

Does that make sense ?

@jaimecbernardo jaimecbernardo added the Idea-New PowerToy Suggestion for a PowerToy label May 9, 2019
@crutkas
Copy link
Member

crutkas commented Feb 24, 2020

@nalf3in, how are you experiencing latency. would love to put you in contact with the team and better understand that.

Disabling I'm pretty sure won't be possible so i'm going to close this as "won't fix"

@theyareonit
Copy link

theyareonit commented Apr 25, 2024

@crutkas DWM forces vertical sync to be always enabled in windowed mode. It makes the desktop feel significantly less responsive on low refresh rate monitors, so some may prefer the lower input latency even at the cost of screen tearing.

@dxgldotorg
Copy link

@crutkas DWM forces vertical sync to be always enabled in windowed mode. It makes the desktop feel significantly less responsive on low refresh rate monitors, so some may prefer the lower input latency even at the cost of screen tearing.

If your game can utilize flip model it can bypass that latency - https://wiki.special-k.info/Presentation_Model

In Windows 11 you can force DirectX 11 and 12 games to always use flip model.

@theyareonit
Copy link

But won't that only work in games, rather than other apps like browsers? The difference in responsiveness is still noticeable even outside of games when testing on Windows 7 or Linux with composition disabled.

@dxgldotorg
Copy link

But won't that only work in games, rather than other apps like browsers? The difference in responsiveness is still noticeable even outside of games when testing on Windows 7 or Linux with composition disabled.

Windows 7 doesn't support flip model. Also it appears browsers are running in flip model on 10 and 11, at least Chromium based ones.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Idea-New PowerToy Suggestion for a PowerToy
Projects
None yet
Development

No branches or pull requests

5 participants