We have a server with 4 CPUs, the CPU Monitoring of the server always shows 100% even though it's not.
On UNIX, the CPU calculations are based on load averaging as displayed by the command top. You can scale the results the agent returns with the objmon.cpu.scalefactor parameter.
Add the following parameter in agent's agentparm.txt file and recycle the agent for the change to be effected:
As per the documentation;
Specifies a scale factor to multiply the load averages of a CPU. When processing a CPU Monitoring job, this parameter lets the agent express the load average as a percentage. This scale factor is for busy computers that would otherwise always report 100 percent use.
Example: If you set the scale factor to 10 and the reported load average is 7, then the reported CPU usage would be 70 percent.
To determine CPU usage, the agent makes a call to native functions or programs (depending on the platform). The agent might call one or a combination of the following:
CA WA Agent for UNIX, Linux, Windows, or i5/OS Agent Parameters Used for Troubleshooting