IBM Support

BigFix Client CPU Utilization

Technote (troubleshooting)


Problem(Abstract)

CPU utilization by the BigFix client and how to govern the amount ot CPU the BigFix client uses

Resolving the problem

The amount of CPU the BigFix client uses on an endpoint machine is governed by the following two client settings:

  • _BESClient_Resource_WorkIdle
  • _BESClient_Resource_SleepIdle

Note: Descriptions for these and other client settings can be found here.

By default, the _BESClient_Resource_WorkIdle setting is set to 10 and the _BESClient_Resource_SleepIdle setting is set to 480.

The BigFix client will do work (evaluate relevance) for a designated amount of time then go to sleep for a designated amount of time. The WorkIdle setting controls how many milliseconds to work before going to sleep in each cycle and the SleepIdle setting controls how many milliseconds to sleep after performing work in cycle. If the WorkIdle setting is high in comparison to the SleepIdle setting, then the BigFix client will evaluate Fixlet relevance faster, but the CPU usage will be higher. By default, WorkIdle is 10 milliseconds and SleepIdle is 480 Milliseconds. Since 10 is 2% of 480 you can expect the bigFix client to use at most 2% of the CPU. Both WorkIdle and SleepIdle have maximum values of 500.

To determine the upper bound on the amount of CPU the agent will use with your custom settings, use the formula:

Max agent %CPU = workidle / (workidle + sleepidle)
Example (default settings): 10 / (10 + 480) = 2%

You can easily manage these settings and adjust the amount of CPU the BigFix client will use via Task # 168 in the BES Support site.

The task offers you the ability to set the client CPU usage to any of 5 different modes (via 5 different actions and preset values in the action script).

_BESClient_Resource_WorkIdle
_BESClient_Resource_SleepIdle
CPU Mode
CPU Upper bound
Note
2
500
very low
< 0.5%
Not Recommended
10
480
default
< 1-2%
Default
25
460
medium
< 5%
Not Recommended
50
450
high
< 10%
Not Recommended
100
400
very high
< 20%
Not Recommended

Some Notes:
  • Test these settings on a limited set of endpoint machines before deploying them to the majority of your deployment endpoint machines.
  • In practice, the CPU usage is typically lower than this ratio (because the agent will often be waiting for IO and it will yield its CPU time).
  • All of these calculations apply to a single processor so if you have multiple processors, the overall % of agent CPU is reduced significantly.
  • If you adjust the CPU usage away from the default and experience issues, switch the CPU usage back to the default values.
  • These CPU settings strictly govern BES Client evaluating content in the evaluation mode of the client's cycle. The BigFix agent may use up to 50% of the CPU at times during the execution parts of its operation (i.e. initiating an install). These CPU spikes are normal and are expected to be short lived to where they would not be typically noticeable. If the BES Client experiences a sustained CPU spike it may mean there is a problem in the client executing on a problematic action or a systemic issue. This would need to be investigated and the problem determined through analyzing the client logs and/or client debug logging.

Historical Number

250

Document information

More support for: IBM BigFix family

Software version: Version Independent

Operating system(s): Platform Independent

Reference #: 1505852

Modified date: 01 August 2016