This article describes the following on-demand scanner (ODS) performance settings:
- Limit maximum CPU usage (available starting in ENS 10.7.x)
- System utilization
Limit maximum CPU usage:
The
Limit maximum CPU usage option on the
Performance tab for the ODS limits the maximum amount of CPU that a scan consumes. This feature regularly checks the operating system for CPU percentage used. This check is effectively identical to running CLI commands (for example,
wmic cpu get loadpercentage). If the response is higher than the allowed CPU percentage limit specified in policy, the ODS pauses, and reevaluates at the next interval. The configured CPU value is an average.
NOTE: Some CPU monitoring tools might alert that the ODS scanner is using more than the configured CPU percentage. This reporting issue happens because the CPU monitoring method is failing to take into account the time not using CPU.
System utilization:
The
System utilization option on the
Performance tab for the ODS enables the operating system to specify the amount of CPU time that a scan receives. This option maps to Windows Priority Control. The System utilization setting does not set a static percentage of CPU utilization or threshold for CPU used to perform an ODS. Instead, the operating system manages the amount of CPU resources that the ODS receives at any point in the scan process. The logic that Windows Priority Control uses keeps the CPU as busy as possible performing useful tasks. Windows Priority Control prioritizes CPU utilization to complete specific tasks in the shortest time possible, based on priority. Tasks must be prioritized to determine how available system resources are allocated.
A core component of Windows Priority Control is the System Scheduler. The System Scheduler uses a Multilevel Feedback Queue algorithm to check the priority and the length of time needed to complete a task. Windows Priority Control allocates system resources based on this algorithm. When an ODS is set to run at
Below Normal, it does not take CPU time from programs that run at
Normal priority. If set to
idle, it does not take CPU from any other task or process running at a higher priority.
When an ODS occurs, Windows Priority Control allocates CPU time to the ODS. How Windows Priority Control allocates CPU is based on the Scheduling Priority for the running task. The task priority of the ODS can be set in the ODS task or policy under Performance, System utilization.
The following Microsoft article explains how Windows Priority Control works:
https://msdn.microsoft.com/en-us/library/windows/desktop/ms685100(v=vs.85).aspx
NOTE: The priority does not apply to archive files if archive scanning is enabled.
To view the priority of a task:
- Press Ctrl+Alt+Del, then select Task Manager.
- On the Processes tab, right-click the process and highlight Set Priority.