cybAgent.bin and virtual memory

Document ID : KB000095439
Last Modified Date : 10/05/2018
Show Technical Document Details
Issue:
I'm trying to better understand the virtual memory consumption by the cybAgent.bin process. We have 2 servers which have identical OS's and on one server, the cybAgent process is using 507MB of virtual memory and on the other server it's using 6.4GB of virtual memory.
Environment:
CA Workload Automation Agents
Cause:
The Agent is actually not using 6.4GB of virtual memory but Java is reserving the maximum heap from virtual memory space. The maximum allocateable memory is based on the available resources on the server so java can reserve the virtual memory differently on each server and Operating System.
Resolution:
You can limit the maximum allocateable java virtual memory for the agent using the following parameter;
oscomponent.jvm.x.options=-Xmx<size>
Where -Xmx<size> is the maximum heap size.

On the other server with 6.4GB of virtual memory, you can configure the agent to use up to 512MB of java memory for heap by adding the parameter to the agent's agentparm.txt file. For example;

oscomponent.jvm.x.options=-Xmx512m

The value could be increased as needed if the resources is available on the agent computer.

You need to restart the agent for the change to be effected. The simple_health_monitor.log in agent's log directory will show the maximum allocateable and total allocated heap of memory for the agent.