When it comes to operating system optimization, I have two sides battling with each other. Although optimizing does improve single server scalability, I believe the more you mess with the OS the greater your chances are that you will break something.
Default Apps
Services
Service Name |
Default State |
Default Status |
Hosted Apps Workloads |
Hosted Desktop Workloads |
Themes |
Automatic |
Running |
Disable |
Enable – better user experience Disable – better server density |
Scheduled Tasks
Scheduled tasks will sporadically impact density as they only run when a trigger is tripped. When determining what to disable, we need to look at the value the task has in a non-persistent environment. This assumption is based on the XenApp Best Practice of server consistency.
Scheduled Tasks – Applications
Tasks |
Description |
Application Experience \ Microsoft Compatibility Appraiser |
Helps resolve application compatibility challenges. |
Application Experience \ StartupTask |
Determines if there are too many startup entries and then notifies |
Scheduled Tasks – Microsoft Customer Experience Program
Tasks |
Description |
AutoCHK \ Proxy |
This task collects and uploads autochk SQM data if opted-in to the |
Customer Experience Improvement Program \Consolidator |
If the user has consented to participate in the Windows Customer |
Customer Experience Improvement Program \KernelCeipTask |
The Kernel CEIP (Customer Experience Improvement Program) task |
Customer Experience Improvement Program \UsbCeip |
The USB CEIP (Customer Experience Improvement Program) task collects |
Scheduled Tasks – Safety
Tasks |
Description |
Windows Defender \ Windows Defender Cache Maintenance |
Can be disabled in case an alternative virus and malware protection |
Windows Defender \ Windows Defender Cleanup |
Can be disabled in case an alternative virus and malware protection |
Windows Defender \ Windows Defender Scheduled Scan |
Can be disabled in case an alternative virus and malware protection |
Windows Defender \ Windows Defender Verification |
Can be disabled in case an alternative virus and malware protection |
Windows Filtering Platform \BfeOnServiceStartTypeChange |
This task adjusts the start type for firewall-triggered services when |
Scheduled Tasks – Maintenance
Tasks |
Description |
CHKDSK \ Proactive Scan |
NTFS Volume Health Scan |
Diagnosis \ Scheduled |
The Windows Scheduled Maintenance Task performs periodic maintenance |
DiskDiagnostic \ Microsoft-Windows-DiskDiagnosticDataCollector |
The Windows Disk Diagnostic reports general disk and system |
Maintenance \ WinSAT |
Measures a system’s performance and capabilities |
Power Efficiency Diagnostics \ AnalyzeSystem |
This task analyzes the system looking for conditions that may cause |
RecoveryEnvironment \ VerifyWinRE |
Validates the Windows Recovery Environment. |
Registry \ RegIdleBackup |
Registry Idle Backup Task |
Scheduled Tasks – General
Tasks |
Description |
Mobile Broadband Accounts / MNO Metadata Parser |
Parses information related to mobile broadband users |
Power Efficiency Diagnostics \ AnalyzeSystem |
This task analyzes the system looking for conditions that may cause |
RAS / MobilityManager |
Provides support for the switching of mobility enabled VPN connections |
Shell / IndexerAutomaticMaintenance |
Maintains the search index |
WDI \ ResolutionHost |
The Windows Diagnostic Infrastructure Resolution host enables |
User Interface
Optimization |
Configuration |
Disable default system Screensaver |
HKEY_USERS\.DEFAULT\ControlPanel\Desktop “ScreenSaveActive”=dword: 00000000 |
Hide Hard Error Messages |
[HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\Windows] “ErrorMode”=dword:00000002 |
Settings “Visual Effects to Custom” |
[HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\VisualEffects] “VisualFXSetting”=dword:00000003 |
Disable “Show translucent selection rectangle” |
[HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced] “ListviewAlphaSelect”=dword:00000000 |
Disable “Show shadows under windows” |
[HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced] “ListviewShadow”=dword:00000000 |
Disable “Animate windows when minimizing and maximizing” |
[HKEY_CURRENT_USER \ControlPanel\Desktop\WindowMetrics] “MinAnimate”=”0” |
Disable “Animations in the taskbar” |
[HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced] “TaskbarAnimations”=dword:00000000 |
Disable “Enable Peek” |
[HKEY_CURRENT_USER\Software\Microsoft\Windows\DWM] “EnableAeroPeek”=dword:00000000 |
Disable “Save Taskbar Thumbnail Previews” |
[HKEY_CURRENT_USER\Software\Microsoft\Windows\DWM] “AlwaysHibernateThumbnails”=dword:00000000 |
Disable “Smooth edges of screen fonts” |
[HKEY_CURRENT_USER \Control Panel\Desktop] “FontSmoothing”=”0” |
Disable the rest of the visual effects |
[HKEY_CURRENT_USER \Control Panel\Desktop\] “UserPreferencesMask”=RegBin: “90,12,03,80,10,00,00,00” |
Disable cursor blink rate |
[HKEY_CURRENT_USER \Control Panel\Desktop] “CursorBlinkRate”=”-1″ |
Disable Internet Explorer First Run Wizard |
[HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\InternetExplorer\Main] “DisableFirstRunCustomize”=dword:00000001 |
Reduce menu show delay |
[HKEY_CURRENT_USER\ControlPanel\Desktop] MenuShowDelay”, “0” |
System
System – BIOS
Optimization |
Configuration |
Max Performance |
Verify BIOS is set for maximum performance and not low power. |
System – Commands
Optimization |
Configuration |
Disable hibernate |
Powercfg -h off |
System – Registry updates
Optimization |
Configuration |
Disable NTFS Last Access Timestamps |
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\FileSystem] “NtfsDisableLastAccessUpdate”=dword:00000001 |
Disable Memory Dump Creation |
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\CrashControl] “CrashDumpEnabled”=dword:00000000 “LogEvent”=dword:00000000 “SendAlert”=dword:00000000 |
Increase Disk I/O Timeout to 200 Seconds |
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Disk] “TimeOutValue”=dword:000000C8 |
Daniel (Follow on Twitter @djfeller)
Citrix XenApp and XenDesktop 7.6 VDI Handbook
XenApp Best Practices
XenApp Video
Hello Daniel. Nice post!
Is there a way of using XenApp with Windows Server 2012R2 but delivering the “Windows 10” user experience present in Windows 2016?
LikeLike
nope. because windows server 2012 is equivalent to windows 8/8.1
windows 7 = server 2008R2
windows 8/8.1 = server 2012/R2
windows 10 = server 2016
LikeLike
Very nice!
I am a bit confused on the last setting in this article “Increase Disk I/O Timeout to 200 Seconds”.
Why is this necessary? I have read the following article, which tells the opposite:
https://blogs.msdn.microsoft.com/san/2011/09/01/the-windows-disk-timeout-value-less-is-better/
LikeLiked by 1 person
nobody for answer to Walhalla Question ??
LikeLike
There is a concern that during high storage activity time (like a VM migration) that the disk might not respond in a timely manner, resulting in disk failures.
LikeLike
Hi Daniel,
Have you benchmarked the resource utilisation of Server 2016 vs previous OSE’s? We’re running XA 7.15 now on Server 2016, almost all the usual optimisations etc, but our sessions consume over 3GB frequently, compared to 400-500MB on XA 6.5/Server 2008 R2
LikeLike
Hello!
We are setting up a couple of W2012 VDIs for the company we are working for and the want this optimizations done by GPO.
It looks quite ridiculous to me and an unnecesary job but that’s what they want.
Do you know about any adm pack that it can be downloaded in order to avoid doin it policy by policy?
thanks!
LikeLike