Document information

Document ID: 4548
Subject: How much memory can I allocate to Xeams
Creation date: 12/14/15 4:35 PM
Last modified on: 5/3/22 11:02 AM


How much memory can I allocate to Xeams?

The answer depends on how much physical memory you have on the system where Xeams is installed and which operating system are you using.

The maximum total memory on any machine equals Physical Ram + Virtual Memory. Therefore, if your machine has 2 GB of physical memory and you have configured it for an additional 2 GB of virtual memory, it can use up to 4 GB for memory for all processes on the machine. However, on a 32bit platform actual memory usage cannot exceed 2 GB / process. The following table lists memory usage for different platforms

PlatformSuggested MaximumActual Maximum
Microsoft Windows 32 bit512MB1.5 GB
Microsoft Windows 64 bit512MB128 GB *
Linux 32 bit512MB1.5 GB
Linux 64 bit512MB128 GB *
Solaris 32 bit512MB3.5 GB
Solaris 34 bit512MB128 GB *


* The theoretical memory limit on a 64bit machine is about 264, which is about 17.2 billion gigabytes. If your server requires that much of memory, you must be working for the Department of Defense.

Steps to increase memory in Windows

The following steps demonstrate how to increase memory in Xeams for Windows.
  • Login in as admin to the Admin Console
  • Click on the gear icon on the upper right side of the Memory Status

    Max%20Memory%20Configuration.jpg
  • Specify new value on the following page
  • Follow the additional instructions after modifying the new memory

Steps to increase memory in Linux

The above solution does not work in Linux. The following steps demonstrate how to increase memory in Xeams for Linux.
  • You will need to modify 2 files: run.sh that is in /opt/Xeams directory, and AppConfig.xml in the /opt/Xeams/config directory.
  • Open the file run.sh with a text editor (such as vi or nano) and look for the following line: jre/bin/java -server -Xmx512m
  • Change the value 512 to something higher (1024) to increase the memory size. Save the file and exit
  • Open the file AppConfig.xml in your config directory and look for the following line: -server -Xmx512m -DLoggingConfigFile=logconfig.xml Change the value (512). Save the file and exit.
  • Restart Xeams.
NOTE: on specific distributions of linux, the run.sh file might be named synafed.sh instead. In QNAP, you will also need to modify xeams.sh in the Xeams directory.

User comments

Posted by Reto Botta on 2/25/16 5:04 AM

Sorry, forgot the most important thing: The file you need to modify is run.sh in the Xeams config directory

Posted by Joe Weirather on 8/17/16 6:18 PM

MY SOLUTION: I was able to piece together the following solution from logs and the other comments mentioned here (thank you all). As of build 5832 (and apparently going back further), this setting is found in run.sh. In my case, the file can be found at: /opt/xeams/run.sh Again, in my case, line 10 reads: jre/bin/java -server -Xmx1536m -cp $CP -DLoggingConfigFile=logconfig.xml com.synametrics.xeams.ServerStarter & The memory setting is the argument "-Xmx1536m", where the "1536" is an integer value in megabytes to allocate to the java server. In my case, I updated this number from 512 to 1536 (1.5GB), then rebooted the server (for good measure). Upon restart my memory allocation was 1.5GB, and this was also reflected in the UI/Dashboard. For the record, the issue I was experiencing was that periodically, say every 5-10 days, the Xeams server would become completely unresponsive and remain that way. I was able to login to the physical server through SSH and Webmin, and everything seemed fine, but Xeams would not respond to any SMTP or HTTP requests. After monitoring the server using HTOP for a few days, I saw that memory was very frequently pushing the limits at 512MB, and I made the assumption that Xeams was running out of memory frequently and unable to restart. My hope is that updating the memory to 1.5GB will alleviate some or all of this.

Posted by Reto Botta on 2/25/16 5:03 AM

In the Xeams config directory, change the setting on the java command line, then restart Xeams. Worked for me

Posted by Roger Stumbaugh on 1/7/16 12:19 PM

This method does not work. The picture isn't even correct anymore. So has anyone ever successfully changed the memory size?

Posted by Randy Henderson on 2/27/16 9:11 PM

Roger, from the main dashboard click on the gear in the upper right corner of the Memory Status box

Posted by marios on 5/8/16 7:40 AM

change the value direclty via service.properties on the config file and rather if it show's up that the change are made or not it will work.


Add a comment to this document

Do you have a helpful tip related to this document that you'd like to share with other users?

Important: This area is reserved for useful tips. Therefore, do not post questions here. Instead, use our public forums to post questions.