How to Identify and Resolve High CPU Usage Issues
Issue:
On rare occasions, people have reported an issue where CPU usage on the EveryonePrint server reached close to 100%. In such cases, log files may not be sufficient to track down the root cause of the issue. More in-depth tracking of running processes and file handles is then necessary.
Solution:
Process Explorer Tool
- Download Sysinternal Process Explorer from the Microsoft site at https://technet.microsoft.com/en-us/sysinternals/bb896653.aspx
- Unzip content to C:\
- You can create a shortcut to launch Process Explorer at startup: on Windows 2012, click Start and enter "shell:StartUp"
- Setup shortcut properties with /t (start minimized) and /e (start elevated), as shown in the screenshot below.
/Images%20SAFEQ%205,%206%20and%20Managed/Windows-Shortcut-Properties-Process-Explorer-Startup-Configuration.png?width=450&height=231&name=Windows-Shortcut-Properties-Process-Explorer-Startup-Configuration.png)
- Setup Process Explorer Options: Allow Only One Instance.
/Images%20SAFEQ%205,%206%20and%20Managed/Process-Explorer-Options-Menu-Settings-Screenshot.png?width=250&height=242&name=Process-Explorer-Options-Menu-Settings-Screenshot.png)
- Setup Process Explorer View: Show Process Tree / Show Lower Pane -> Handles
/Images%20SAFEQ%205,%206%20and%20Managed/Process-Explorer-View-Menu-Screenshot.png?width=450&height=358&name=Process-Explorer-View-Menu-Screenshot.png)
Using Process Explorer:
- Using Process Explorer to identify EveryonePrint Web service in normal operation.
/Images%20SAFEQ%205,%206%20and%20Managed/Process-Explorer-System-Usage-Diagnostics.png?width=500&height=285&name=Process-Explorer-System-Usage-Diagnostics.png)
- Using Process Explorer to track a process using high-CPU; here, cpp.exe is using 30% + CPU, and we can identify the file currently being printed.
/Images%20SAFEQ%205,%206%20and%20Managed/High-CPU-Usage-Detailed-Analysis-Process-Explorer.png?width=500&height=402&name=High-CPU-Usage-Detailed-Analysis-Process-Explorer.png)
With this information, it is now possible for us to analyze the log files, track down the origin of the file being printed, grab a copy (when EveryonePrint is set up for 'DebugKeepFiles), perform debugging in our lab, etc.