Control the Microsoft Windows Memory Management Agent

article #1314, updated 68 days ago

There are the commands currently known to this writer. These exist on Windows 8/2012 and up, though memory compression for at least one one item is not present in 8/2012. Do a Get-MMAgent to see what your OS has and what the status is. There are a lot of tweakables, it’s not small, especially on 10. There is a tweakable number immediately visible, “MaxOperationAPIFiles”.

Get-MMAgent
Set-MMAgent
Disable-MMAgent
Enable-MMAgent

Get-Help for the above did not help much. But the Microsoft web page for Disable-MMAgent shows that it will disable bits and pieces. Disabling memory compression is a good idea, it conserves CPU resources, if you have lots of RAM. Items known to be available:

-ApplicationLaunchPrefetching
-ApplicationPreLaunch
-OperationAPI
-PageCombining
-MemoryCompression
-CimSession <CimSession[]>
-ThrottleLimit <Int32>
-AsJob

So to disable only memory compression, out of all of the above functions, just run this PowerShell command:

Disable-MMAgent -MemoryCompression

The above works, even though -MemoryCompression is not listed in the Get-Help items for Disable-MMagent.

Another setting which may help, if you have an SSD or fast RAID, is to increase “the maximum number of prefetch files for scenarios that the Operation Recorder API records”. Default is 256.

Set-MMAgent -MaxOperationAPIFiles 1024

Categories: