Tag Archives: optimizations

Optimize VDI: Windows 10 Services (Original, Anniversary and Creator Updates)


This is a multi-part blog series focused on optimizing Windows 10 VDI

As we saw in a previous blog, Microsoft added new default apps into the base operating system of the Windows 10 Build 1703 (Creator Update). These updates will have an impact on the user experience, especially in a VDI implementation.

Windows Services

Many of the new capabilities with the latest builds of Windows 10 also implements new Windows services. With each release, the number of services has steadily increased.

  • Build 1507: 196 Services
  • Build 1607: 212 Services
  • Build 1703: 223 Services

History has shown that optimizing Windows services can improve logon time and server density. It is recommended to review the list of services and disable those that are not necessary for the users.

To see a list of Windows services, run the following PowerShell command:
Get-Services

The table below shows the state of each service (Stoppped or Running).  Only services with a green, orange and red shading should be considered for disabling.

Color Code:

  • Green: A currently running service; consider disabling
  • Orange: A stopped service that will run when requested; consider disabling
  • Red: Disable IF an alternative approach is used

Continue reading Optimize VDI: Windows 10 Services (Original, Anniversary and Creator Updates)

Advertisements

Windows 10 Optimization – Part 3 – Scheduled Tasks


IMG_2856

Living in the cold north, you learn to take vacation during the 3 weeks of summer (it really isn’t that bad). I typically spend this time windsurfing, sailing, biking or camping (notice all outdoor activities).

Unfortunately, when vacation time gets close, I start to see a growing honey-do list. I spent a good portion of my last summer vacation staining 11 interior wood doors, building closet shelving, and shoveling 7 tons of rock (ugh).

All of these “scheduled tasks” hurt my vacation experience.

Scheduled tasks can hurt, and Windows 10 has a lot of scheduled tasks, which is why we want to try and optimize (safely). So far, we have gone through the following optimization recommendations

All the while, we are trying to adhere to the following XenApp Best Practice, and optimizing scheduled tasks will follow the same best practice:

For the best combination of user experience and resource consumption, optimize appropriately

When operating in a pooled virtual desktop mode, where changes are discarded on subsequent reboots, it doesn’t make sense to perform some of these tasks as they will simply consume resources.

Microsoft Customer Experience Program

Tasks Description
Application Experience \ Appraiser Aggregates and uploads Application Telemetry information if opted-in to the Microsoft Customer Experience Improvement Program.
Application Experience \ ProgramDataUpdater Collects program telemetry information if opted-in to the Microsoft Customer Experience Improvement Program
AutoCHK \ Proxy This task collects and uploads autochk SQM data if opted-in to the Microsoft Customer Experience Improvement Program.
Customer Experience Improvement Program \Consolidator If the user has consented to participate in the Windows Customer Experience Improvement Program, this job collects and sends usage data to Microsoft.
Customer Experience Improvement Program \KernelCeipTask The Kernel CEIP (Customer Experience Improvement Program) task collects additional information about the system and sends this data to Microsoft. If the user has not consented to participate in Windows CEIP, this task does nothing.
Customer Experience Improvement Program \Uploader This job sends data about windows based on user participation in the Windows Customer Experience Improvement Program
Customer Experience Improvement Program \UsbCeip The USB CEIP (Customer Experience Improvement Program) task collects Universal Serial Bus related statistics and information about your machine and sends to the Windows Device Connectivity engineering group at Microsoft. The information received is used to help improve the reliability, stability, and overall functionality of USB in Windows. If the user has not consented to participate in Windows CEIP, this task does not do anything.

Safety

Tasks Description
Shell \ FamilySafetyMonitor Initializes Family Safety monitoring and enforcement.
Shell \ FamilySafetyRefresh Synchronizes the latest settings with the Family Safety website.
Windows Defender \ Windows Defender CacheMaintenance Can be disabled in case an alternative virus and malware protection has been implemented.
Windows Defender \ Windows Defender CacheMaintenance Can be disabled in case an alternative virus and malware protection has been implemented.
Windows Defender \ Windows Defender Cleanup Can be disabled in case an alternative virus and malware protection has been implemented.
Windows Defender \ Windows DefenderScheduled Scan Can be disabled in case an alternative virus and malware protection has been implemented.
Windows Defender \ Windows DefenderVerification Can be disabled in case an alternative virus and malware protection has been implemented.
Windows Filtering Platform \BfeOnServiceStartTypeChange This task adjusts the start type for firewall-triggered services when the start type of the Base Filtering Engine (BFE) is disabled.

Maintenance \ Optimization \ Protection

Tasks Description
Application Experience \ StartupAppTask Scans startup entries and raises notification to the user if there are too many startup entries.
CHKDSK \ Proactive Scan NTFS Volume Health Scan
Diagnosis \ Scheduled The Windows Scheduled Maintenance Task performs periodic maintenance of the computer system by fixing problems automatically or reporting them through the Action Center.
DiskDiagnostic \ Microsoft-Windows-DiskDiagnosticDataCollector The Windows Disk Diagnostic reports general disk and system information to Microsoft for users participating in the Customer Experience Program.
DiskDiagnostic \ Microsoft-Windows-DiskDiagnosticResolver This task warns users about faults that occur on disks that support Self-Monitoring and Reporting Technology
Defrag \ ScheduledDefrag This task optimizes local storage drives
FileHistory \ File History Protects user files from accidental loss by copying them to a backup location when the system is unattended
Maintenance \ WinSAT Measures a system’s performance and capabilities
MemoryDiagnostic \ ProcessMemoryDiagnosticEvents Schedules a memory diagnostic in response to system events.
MemoryDiagnostic \ RunFullMemoryDiagnostic Detects and mitigates problems in physical memory (RAM).
Power Efficiency Diagnostics \ AnalyzeSystem This task analyzes the system looking for conditions that may cause high energy use.
RecoveryEnvironment \ VerifyWinRE Validates the Windows Recovery Environment.
Registry \ RegIdleBackup Registry Idle Backup Task
SystemRestore \ SR This task creates regular system protection points.
WDI \ ResolutionHost The Windows Diagnostic Infrastructure Resolution host enables interactive resolutions for system problems detected by the Diagnostic Policy Service. It is triggered when necessary by the Diagnostic Policy Service in the appropriate user session. If the Diagnostic Policy Service is not running, the task will not run

And remember, if you are unsure about turning off a scheduled tasks, LEAVE IT ALONE!

Note: The complete Windows 10 optimization blog series

Daniel ()
XenApp Best Practices
XenApp Videos