You experience performance issues with the IGEL Cloud Gateway (ICG). Manifold reasons can underlie performance degradation, and there are various solutions like expanding the server's physical RAM, updating the ICG and the UMS components, etc. The following article covers only the increase of the maximum memory allocated to the ICG (Java heap size).



Symptom

You face performance problems and encounter OutOfMemory errors in the ICG log files (usg.log).

Problem

The default Java heap size may be insufficient for the ICG. This usually happens if you have

  • a large number of devices connected to the ICG
  • many files of medium or large size transferred to the devices (background images, screensavers, etc.)

Solution: Change Java Heap Size for the IGEL Cloud Gateway

This is how you can modify the heap size for the ICG version 2.01 and higher:

  1. Stop the ICG server service.

  2. Edit /opt/IGEL/icg/usg/webapps/usg.conf

  3. Change the -Xmx value in the following line according to your needs:
    JAVA_OPTS='-Djava.awt.headless=true -Djava.security.egd=file:/dev/./urandom -Xms512M -Xmx1024m -server -XX:+UseParallelGC'

  4. Reboot the server.

The Java heap size must always be defined INDIVIDUALLY depending on the configuration of the server and your UMS environment, but it must be less than the amount of available physical RAM. General recommendations can be found in the Oracle article Tuning Java Virtual Machines (JVMs); see also the -Xmx option there.

Note also the following:

  • All heap size changes are at your own risk! Change the heap size only if you know exactly what you are doing. In the case of improper configuration, the ICG server will be unable to run.
  • Reducing the memory may affect the function of the ICG and is NOT recommended.
  • During the ICG update, the heap size value is set to the default. Therefore, you have to adapt it again.

Related Topics

How to Configure Java Heap Size for the UMS Server

How to Configure Java Heap Size for the UMS Console