On machines that have more than eight (8) CPU cores, you may see the System Center Operations Manager 2007 R2 Config Service consuming 100% CPU for extended periods of time.
The Config Service reads from the database and notifies the agents that new config is needed. This is seen via event ID 29102 in the event log. After that all agents send a message to the Config Service to get the new config. The Config Service has a threshold on how many requests it is to process at a time which is set to 25 * CPU Core count by default. On machines where there are greater than eight cores this can lead to the launching of threads that are all trying to connect to SQL that can overwhelm the the network or the SQL server.
To resolve this issue, change the default setting to a setting where the total number of cores * setting is no more than 100:
1. Stop the Config Service
2. Open Regedit
3. Go to HKLM\Software\Microsoft\Microsoft Operations Manager\3.0\Config Service
4. Create a DWORD value named "Max Number Of Worker Threads Per CPU" without the quotes and set the value such that the number of cores * <your value> is no greater than 100.