Graphics
Intel® graphics drivers and software, compatibility, troubleshooting, performance, and optimization
20598 Discussions

DWM.EXE High CPU (One Core) On Target System after Remote Desktop Disconnect on Windows 10 x64 1903 (Fully Patched)

KMarc2
Beginner
11,213 Views

*** PROBLEM RESOLVED BY KB4522355 RELEASED OCTOBER 24TH 2019. ***

 

Two systems,

  • Intel NUC with Iris Plus Graphics 655 running latest drivers 26.20.100.6890 
  • the other with Intel HD Graphics 2500 running latest drivers 5.33.48.5069 

 

On completion of a remote desktop session, the target system shows high CPU utilisation (one core running at 100%) for DWM.EXE - the newer machine (Intel Iris Plus 655) will eventually crash several hours later - I suspect a memory leak such as the previous one affecting QuickSync.

 

If I change the drivers to "Microsoft Basic Display Adapter" then things return to normal re: DWM.EXE. It's not a long term fix as one of the machines is my Media Centre PC and I lose audio output on it, the other is a headless Plex server and I lose "Quick Sync" hardware transcoding.

 

Anyone else seeing this ?

0 Kudos
6 Replies
Leonardo_C_Intel
Moderator
6,444 Views

Hello KMarc2

 

Thank you for posting in the Intel Community.

 

·        Does this behavior start happening after the Windows® 10 1903 update? 

·        What are the models of the systems used? 

·        Which one is the target system?

 

·        Please attach to this thread the TXT file the Intel® System Support Utility will generate: https://downloadcenter.intel.com/download/25293/Intel-System-Support-Utility

·        Steps to save the report:

1-    Run the utility.

2-    Click on “Scan” to get the scanned system.

3-    Once the scan is complete click on “next”.

4-    Use the “save” option, save the report to your desktop.

5-    To attach a file, you must click the “Attach” option on the bottom left-hand corner of the response box.

 

Note: please provide me with the report for both systems.

 

Regards,

Leonardo C.                        

Intel Customer Support Technician

Under Contract to Intel Corporation

0 Kudos
KMarc2
Beginner
6,444 Views

Hi Leonardo,

 

I've gotten a bit further in diagnosing this problem. Apologies for the length of my response, but I believe there is a problem with the Microsoft RDP code in 1903 (an area which seems to have had a major internal overhaul), and I document a successful workaround. If you have any mechanism to pass this to Microsoft that would be appreciated. After reading my post, if you still believe providing further diagnostic information would be valuable, I'm happy to do so.

 

For clarity,

  • the behavior started with 1903
  • one system is an Intel NUC NUC8I7BEH PC with 16Gb Corsair Vengeance Memory and an Intel 760p 256Gb SSD; the other is a Chillblast Fusion Vacuum PC based on a P8H77-M motherboard. However other machines with nVidia GPU's are also affected, so this is NOT an Intel problem.
  • my testing consists of using a third machine running Windows 10 x64 1903 (fully patched) to run the Remote Desktop client software. The "targets" I refer to are the two machines I mention acting as RDP Host machines. Both demonstrate the high CPU DWM.EXE after taking them over and then disconnecting (the NUC has an 8 core CPU so shows 12.5% CPU) and the other machine based on an Intel P8H77-M motherboard.

 

It seems Microsoft has done significant engineering to Remote Desktop in Windows 10 1903 and I now believe a significant bug exists in the Microsoft code.

 

 

 

In the first article a Microsoft employee mentions

 

<--------------------->

There’s a known issue with some of the old display drivers.  <I believe the issue I am facing is related to this area>

 

Display drivers report some of their capabilities upon load. In previous Windows versions this reported data wasn’t used or verified. Because of that, some of the old versions of the legacy display driver may report invalid data and it would be ignored. Starting with Windows 10 1903 RDP uses this data to initialize the session. 

 

The best option is to install an updated display driver from the hardware manufacturer. If the new version is not available, you can workaround this by disabling the problematic driver in the device manager.

 

Our team has identified the issue and we are currently verifying the fix that will dynamically switch to the software renderer if the problematic driver is detected.

 

I will this thread when the fix will be included to the Windows Insider release.

<---------------------->

 

Further testing in my environment has shown that machines without Intel integrated graphics are also showing the problem.

 

In the second article it mentions a change to the RDP driver area

 

<--------------------->

XDDM-based remote display driver: Starting with this release the Remote Desktop Services uses a Windows Display Driver Model (WDDM) based Indirect Display Driver (IDD) for a single session remote desktop. The support for Windows 2000 Display Driver Model (XDDM) based remote display drivers will be removed in a future release. Independent Software Vendors that use XDDM-based remote display driver should plan a migration to the WDDM driver model. For more information on implementing remote indirect display driver ISVs can reach out to rdsdev@microsoft.com.

<--------------------->

 

As a workaround on all of my affected machines I have used Group Policy Editor to set

 

Local Computer Policy

 Computer Configuration

  Administrative Templates

   Windows Components

    Remote Desktop Service

     Remote Desktop Session Host

      Remote Session Environment

       Use WDDM graphics display driver for Remote Desktop Connections

to DISABLED

 

This forces RDP to use the old (and now deprecated XDDM drivers)

 

After rebooting, behaviour returns to normal and after disconnecting from an RDP session the RDP host (target machine) no longer shows DWM.EXE consuming CPU.

 

This isn't a long term fix (to rely on a deprecated feature). I also don't understand why only a limited number of users are affected, but for now, I'm up and running again, and hoping for a Microsoft fix.

 

0 Kudos
BobSaved
Beginner
6,445 Views

WOW, this worked for me. Have had this issue for months it seems, tried a bunch of "solutions" others recommended to no avail. THIS worked. Cannot thank you enough. This is a bit "under the hood's hood" for me, but thanks to people like you, we mini techies look like problem solvers!! Bob

0 Kudos
KMarc2
Beginner
6,444 Views

Hi Bob, thanks. Meanwhile it looks like MS finally fixed it with KB4522355

 

Check out my MS thread at https://answers.microsoft.com/en-us/windows/forum/all/dwmexe-high-cpu-one-core-on-target-system-after/dbce0938-60c5-4051-81ef-468e51d743ab

 

One advantage of leaving the XDDM change in place for me was that Intel Quick Sync continues to work after using Remote Desktop. Coupled with an HDMI monitor dummy plug (such as https://www.amazon.co.uk/gp/product/B072PV6K8J), it now means I can run my Plex server headless with Quick Sync available for hardware transcoding, and remote into it without upsetting the hadeware transcoding.

 

Kevin

0 Kudos
Leonardo_C_Intel
Moderator
6,444 Views

Hello KMarc2

 

Thank you for the details in the issue that you are having, I am going to send this information to be reviewed, I strongly recommend reporting to Microsoft.

 

Regards,

Leonardo C.

Intel Customer Support Technician

Under Contract to Intel Corporation

0 Kudos
Leonardo_C_Intel
Moderator
6,445 Views

Hello KMarc2

 

We will be passing this information to our contacts at Microsoft. However, you should also report this directly to Microsoft since it is an OS bug.

 

Regards,

Leonardo C.

Intel Customer Support Technician

Under Contract to Intel Corporation

0 Kudos
Reply