Windows 11 Compatibility - requesting a statement to show IT

Hey Mario!

We have been trying to request Windows 10 LTSC Edition from our Central IT as a back up for our upcoming fleet of Ubuntu machines - this will enable legacy paradigm to run without tweaking - and sidesteps the broken mess of Windows 11..For those of you who don’t know Windows 10 LTSC has support for 5 years or so, and so your central IT might allow it too - Windows 10 LTSC – the version that won't expire for years • The Register.

However, for Central IT to release Win10 LTSC to us, we have to prove that Windows 11 + PTB will not work.We know that changes to the DWM in Win11 mean that PTB as it currently stands can not work.

This involved us opening a case with MS Premier Support. We’ve concluded a Microsoft Premier Support case (#2601210050002502) regarding Windows 11 DWM timing issues with PTB. Microsoft’s escalation team has closed the case with their recommended solutions, and I need your official input on PTB’s development plans to present to IT.

Microsoft’s Position (Official Case Closure):

Microsoft states that sub-millisecond timing precision IS achievable on Windows 11, but requires application-level implementation of:

  1. DirectX Full Screen Exclusive (FSE) via IDXGISwapChain::SetFullscreenState

  2. Independent Flip optimization for DirectX swapchains

  3. DirectDisplay API (Windows.Devices.Display.Core) for compositor-free display control

Microsoft documentation: https://learn.microsoft.com/en-us/windows/win32/api/dxgi/nf-dxgi-idxgiswapchain-setfullscreenstate

Given PTB is OpenGL for cross OS compatibility I suspect it would be a massive/impossible undertaking to switch to DirectX.

Mario - Could you please provide an official statement on PTB’s development roadmap regarding these Microsoft-recommended DirectX implementations that I can show to MS and my IT department? Specifically:

Is PTB planning to implement DirectX FSE/Independent Flip to achieve precise timing on Windows 11?

Many thanks!

Regards

Dagmar Fraser

Hi Dagmar,

I am not aware of current Psychtoolbox being incompatible with Windows-11? My working assumption is that it works just “as well” with Windows 11 as with Windows 10, ie. ok for not too demanding use cases, if the system is set up according to our recommendations, with all the stated same limitations as on Windows 10, e.g., no Intel graphics, no mixing of HiDPI with standard DPI displays in multi-display setups, dual/multi display way more fragile than single display setup etc.

Right now, slightly more than 75% of all PTB 3.0.20 and later versions for MS-Windows are already running on Windows 11, so the lack of lots of trouble reports from users suggest it is working ok.

Now Psychtoolbox itself still reports Win 11 as “unsupported”, at least it did until yesterdays 3.0.22.2 update (which now says “somewhat supported and tested”, but that is only true in the sense that I don’t have access to a suitable Windows 11 machine atm., so I can’t extensively test it or support it if there were Windows 11 specific problems that don’t happen on Windows 10. I have one almost 10 years old MS Surface Pro 6 tablet running Windows 11, but it is so low on disc space that I can’t even install Matlab, only the less space consuming Octave 7.3 for testing. It only has one USB port, and it only has an Intel iGPU with known buggy graphics/display driver, which prevents any kind of presentation timing tests. To my knowledge all Intel gpu’s have broken drivers, but I couldn’t test if they get eventually fixed, as this Intel gpu hasn’t received any updated drivers in many years – considered end-of-life.

Do you have any different results from testing?

Wrt. to your support case, I think MS support answer is wrong, or at least incomplete, because they only talk about the specific DirectX/Direct3D capabilities, but not about the properties of the 3rd party AMD/Nvidia/Intel provided drivers wrt. OpenGL and Vulkan. These drivers do often use such DXGI optimisations under the hood, e.g., either item 1 or something equivalent to item 1.

(Btw. Last time i looked at it, proposal 3. was not usable by any standard software that doesn’t have a special contractual relationship ($$$ and including signing NDA’s and being considered a VIP enough customer/partner of Microsoft to be considered worthy of this mode) - and also usually reserved to some VR headsets or other special purpose displays.)

Psychtoolbox in its default OpenGL display mode uses an older “Fullscreen exclusive” implementation, which I think is still working fine, or at least was the last time i tested on Windows 10. Essentially when PTB’s timing tests said it is ok, it was usually ok, and if they fail it is broken. The optional Vulkan display backend uses a Vulkan fullscreen exclusive mode whenever possible, likely layered on top of 1.

One test I read to check if a fullscreen exclusive mode is active is to press the volume up/down buttons on your keyboard and see if the onscreen volume indicator shows. If it doesn’t, then it is likely in fullscreen exclusive mode. For yet another one, see the section of “Screen(‘Preference’, ‘VisualDebugLevel’, 6)” in help SyncTrouble.

So I wouldn’t make such a statement about Windows 11 incompatibilities without strong evidence that that’s true, evidence which I am not aware of.

Then I am really confused. 3.0.19 and later version we trialled under Windows 11 in September last, with AMD WX7100, all reported timing was impossible as the DWM was active, and you cannot disable the DWM in Windows 11. Is this now not an issue with more recent PTB versions?

I’ll spin then Win 11 machine back up, with yesterdays PTB update and report here what we were seeing… I have been acting under the delusion this DWM issue was common experience/knowledge.

Thanks for the reply!

Regards,

d