Windows 8.1 Group Policy Update Performance Changes

clockOne of the new improvements in Windows 8.1 is called Group Policy Caching (see Group Policy Caching in Windows 8.1) that makes drastic performance improvements when users are operating over high latency network links. However as with everything there is always a catch….

I have discovered in my testing of this new feature that running a GPUPDATE was taking a LOT longer than compared with Windows 8. In investigating of this I have discovered that the new Group Policy Caching feature needs to download a lot of extra meta information during the policy update. This additional meta information is needed so that the policy processing can run in cache mode during a synchronous policy update. All this additional information includes what seems to be the entire contents of the SYSVOL path of the Group Policy object.

As you can see below is a list of network calls to the SYSVOL showing the additional files that are downloaded during a GPUPDATE.

image

The graph below there is a large amount of variance with the number calls to the SYSVOL during a GPUPDATE between Windows 8 and 8.1.

image

Is this a bad thing? Well that depends, If you have a large number of GPO’s applying to your computers it means that a Group Policy Update will take longer. But the good news is that Group Policy Update is an asynchronous background task meaning that the users should never seen this performance hit. BUT… If you ever work with Group Policy (like me) then you probably frequently run GPUPDATE which will now take longer to process…. sometimes a LOT longer…  In  my extreme testing the difference in computer policy processing went from 80 seconds in Windows 8 to 260 seconds with 8.1.

Note: My testing was with a Windows Server 2012 R2 domain controller meaning that the SYSVOL calls were done using SMB 3 protocol. I would expect (but have not confirmed) that this could take even longer if you still have Domain Controllers running Windows Server 2003 R2 with SMB1 protocol which is a LOT more sensitive to latency.

However if you want to disable caching and restore the previous behaviour of Windows 8 you can disable the “Configure Group Policy Caching” policy setting under Computer Configuration > Administrative Template > System > Group Policy.

Warning: Doing this should not be taken lightly as you are modifying the default configuration of the Operating System.

image

If you disable caching you might have noticed in the graph above the it actually reduces the network traffic as compared to Windows 8 behaviour. I believe that this means that there might actually be a benefit in disabling this policy setting as it would reduce your network traffic and possibly even domain controller load.

So if you are using Group Policy Caching in your organisation or not, be aware that either way it will have an impact (more or less) on the amount of network traffic that is generated by your computers during a policy update.

10 Comments

Leave a Reply

Your email address will not be published. Required fields are marked *