Windows 10 Usability Tweaks

A subjective guide based on supposedly-objective data


This guide aims to collect a number of obvious and less-obvious tweaks on making Windows 10 a more usable interactive system. Any entry should be backed by direct, measurable data and external references: no placebo!

Shell performance

win32kbase!*Crit

A common cause of bad interactive performance (and gaming microstutters!) due to Win32 message loop lock contention. Allegedly regressed around RS3. ETW tracing with context switches should provide enough information regarding this.

References: Bruce Dawson's blog series

Explorer side-panel view

Common contention originating from callbacks in Windows.Storage.dll due to change notifications if any drives (e.g. hot-pluggable SATA drives or external drives) are expanded in the side view and any change is made to a directory shown there. Worsens with many File Explorer windows.

Tweaks
  1. Disable shell side panel in toolbar. Might take some closing/reopening windows to get the preference to save.
  2. Ideally: hide removable drives from the side view so they do not auto-expand. Anything under 'This PC' already does not, only removable drives somehow have the tendency to do so. TODO: someone find this

Task Manager 'Details' tab

Icon refreshing seems to be extremely slow. Try to avoid refreshing the Details tab when running Task Manager in the background.

Global performance

Memory compression

Memory compression is regressive on high-memory systems (especially with SSD page file backing) as decompressing page-in still leads to unneeded blocking latency (as opposed to disk ops from failed disk cache generally being asynchronous). In addition to that, it confuses system-wide memory metrics as the commit usage for compressed memory is duplicated: once in the process that's compressed, then yet again as CM31 paged pool.

References: microsoft/WinDev#35

Tweaks

  1. Disable-MMAgent -mc in PowerShell.
  2. Reboot.

Svchost split

Improves reliability, but has been reported to also affect interactive performance. No references at this point.