Java Memory Allocation

Configuring Java Memory

Memory refers to the amount of random access memory(RAM) that your application can utilize. By default Java limits your application cache to 64MB. This is probably not enough for a server. You can extend this limit by giving java a couple command line parameter.

Maximum Allocation: The -Xmx parameter controls the maximum amount of memory the DataTurbine server can utilize.

Initial Allocation:The -Xms parameter controls the minimum allocated memory (speeds up server by reducing the number of times the server has to be resized)

Example: (1 GB Max, 128 MB Initial)

java -jar -Xms128m -Xmx1024m rbnb.jar

The memory allocated has to be a continuous block and should not exceed the physical memory installed in the machine. Here is a table of good values for a given server configuration. You can use it as a guide, however memory really depend on your application. A server receiving images will need considerably more memory then one handling only numerical data.

Note: A 32-bit Java Virtual Machine can utilize up to 3.5GB, In order to utilize more memory you need a 64-bit JVM running on a 64-bit

Physical Memory Initial Allocation Maximum Allocation Parameters Example Application
1 GB 32 MB 256 MB -Xms32m -Xmx256m Field Station, numerical
2 GB 128 MB 1 GB -Xms128m -Xmx1024m Office, numerical
4 GB 256 MB 2 GB -Xms256m -Xmx2048m Server, numerical + video
64 GB 1 GB 4 GB -Xms1024m -Xmx2048m Web Server (64 bit) numerical + video, Other programs using memory.
Open Source DataTurbine Initiative © 2017 Frontier Theme