Reducing Noise in CPU Utilization Policies (SQL Server Utility)

Use the following strategies to reduce reporting noise and unwanted violations in SQL Server Utility resource utilization policies.

How frequently should processor utilization be in violation before it is reported as overutilized?

The evaluation time period and tolerance for percent violations are both configurable using the Policy tab settings in the Utility Administration node of Utility Explorer. To change policies, use the slider controls to the right of policy descriptions, then click Apply. You can also restore default values or discard changes using buttons at the bottom of the display.

  • The data collection interval is 15 minutes. This value is not configurable.

  • The default upper threshold processor utilization policy is 70%. Options range from 0% to 100%.

  • The default evaluation period for processor overutilization is 1 hour. Options range from 1 hour to 1 week.

  • The default percentage of data points in violation before CPU is reported as overutilized is 20%. Options range from 0% to 100%.

For example, based on default values, 4 data points will be collected every hour, and the policy threshold is 20%. So by default, any violation in a 1-hour collection period will be 25% of 4 data points. The default values report any violation of the CPU overutilization policy threshold.

To reduce noise generated by a single violation, consider the following options:

  • Increase the evaluation period by 1 increment to 6 hours. A single violation in 6 hours would be 1 data point in a sample size of 24. In this case, the policy would tolerate 4 violations of the policy threshold (16.7% of data points) in 6 hours, but would report overutilization for 5 or more violations (>20% of data points) in a 6-hour collection period.

  • Increase the tolerance for percentage of violations by 1 increment to 30%. A single violation in 1 hour would be 1 data point in a sample size of 4. In this case, the policy would tolerate 1 violation per hour, but would report overutilization for 2 or more violations (>30% of data points) in a 1-hour collection period.

  • Increase policy thresholds for SQL Server managed instance and data-tier application processor utilization. For more information about how to change the global CPU utilization policies for managed instances of SQL Server or data-tier applications, see Utility Administration (SQL Server Utility). For more information about how to change CPU utilization policies for individual instances of SQL Server, see Managed Instance Details (SQL Server Utility). For more information about how to change CPU utilization policies for individual data-tier applications, see Deployed Data-tier Application Details (SQL Server Utility).

How frequently should processor utilization be in violation before it is reported as underutilized?

The evaluation time period and tolerance for percent violations are both configurable using the Policy tab settings in the Utility Administration node of Utility Explorer. To change policies, use the slider controls to the right of policy descriptions, then click Apply. You can also restore default values or discard changes using buttons at the bottom of the display.

  • The data collection interval is 15 minutes. This value is not configurable.

  • The default lower threshold for processor utilization policy is 0%. Options range from 0% to 100%.

  • The default evaluation period for processor underutilization is 1 week. Options range from 1 day to 1 month.

  • The default percentage of data points in violation before CPU is reported as underutilized is 90%. Options range from 0% to 100%.

Based on default values, 672 data points are collected every week, but the policy threshold is 0%. So by default, this policy does not generate processor underutilization violations. For more information about how to change the global CPU utilization policies for managed instances of SQL Server or data-tier applications, see Utility Administration (SQL Server Utility). For more information about how to change CPU utilization policies for individual instances of SQL Server, see Managed Instance Details (SQL Server Utility). For more information about how to change CPU utilization policies for individual data-tier applications, see Deployed Data-tier Application Details (SQL Server Utility).