ConfigMgr: Troubleshooting High Server Performance
Information gathering
Performance Check List:
Details>
OS - Proc - x86/x64 - Cores and Speed RAM - in GB
Operating System with Latest Supported Service Pack
ConfigMgr Installation with Latest Supported Service Pack, CU.
Physical or Virtual Machine
What Virtualization Host Software - fixed or dynamic memory.
Server Processor Util and RAM usage
Processor util -
SMS Services util of processor -
Troubleshooting high CPU utilization
This depends on history of server performance patterns.
What has been the trend for processor and memory utilization?
constant | fluctuating | increase
Process util - 0-30% ? 50-75% ? 75-100% ?
Has there been a recent spike in processor utilization?
Is the processor utilization constant or fluctuating?
If constant for a long time it means there is lot of processing time required and a high load on the box. There shouldn't be constant high server load on the processor - if so then this would then be an overloaded box.
If fluctuating it means different threads and processes are running and processing and nothing is necessarily "stuck."
When was server last rebooted?
What new changes were recently done - software / hardware / hotfixes / applications on the server?
ConfigMgr specific questions:
new machines added?
new collections added?
new package /updates added?
new roles added on the server?
new agents enabled?
new features enabled recently?
site to site replication working fine?
sql server performance?
network connectivity?
AntiVirus Exclusions:
The SMS\Inboxes directory on Microsoft Systems Management Server (SMS) site servers.
The SMS_CCM\ServiceData directory on Microsoft SMS Management Points.
http://support.microsoft.com/kb/327453 | Antivirus programs may contribute to file backlogs in SMS 2.0, SMS 2003 and Configuration Manager 2007. Also see
http://blogs.technet.com/b/jeff_stokes/archive/2010/05/19/anti-virus-exclusions-and-you.aspxResource Monitor :
Available - Windows Server 2008 upwards.
Under images - select the executable. Here we have selected smsexec.exe and on disk it displays the activity the executable is performing which would give you a quick idea rather than jumping directly into the logs. DDR's and CCR's etc. backlog processing can be quickly identified here.
Backlog Count:
Check inboxmon.log
or run following PowerShell command which will give you an output of the folders with content in descending order.
Get-ChildItem "C:\Microsoft Configuration Manager\inboxes" -recurse | Where {!$_.PSIsContainer} | Group Directory | Sort-Object Count -descending | Format-Table Name, Count -autosize**
If the server does not havePowerShelll - map the inboxes folder on a machine which does - like Windows 7 or Windows Server 2008 R2 and then change the path in quotes.
ConfigMgr Service Manager:
Stop threads one by one and in *parallel * watch if the process or memory drops in Task Manager, once you know the culprit thread you can dig into the corresponding log file to investigate further.
High Memory Utilization
High Memory Utilization by smsexec.exe or other sms related services, or a constant increase in memory size by smsexec.exe
PerfMon Counters:
http://blogs.technet.com/b/breben/archive/2008/12/03/monitoring-sms-sccm-performance.aspx
http://technet.microsoft.com/en-us/library/bb932169.aspx | Monitoring Site Performance
Additional Information
http://technet.microsoft.com/en-us/library/bb932186.aspx | Performance Configuration Recommendations
http://technet.microsoft.com/en-us/library/bb932128.aspx | Expected Server Resource Usage for Configuration Manager Sites
http://technet.microsoft.com/en-us/library/bb932206.aspx | Troubleshooting Configuration Manager Performance