By configuring eXtremeMemory, you can store objects in native memory instead of on the
Java™ heap. Configuring eXtremeMemory enables the IBM® eXtremeIO transport mechanism.
Before you begin
- To learn more about eXtremeMemory and for more information about determining the maximum amount
of memory to use for eXtremeMemory, see Planning to use IBM eXtremeMemory.
- WebSphere® eXtreme Scale 8.6.0.8 adds support for Linux®
PowerPC® LE. eXtreme Scale already supports Linux
Intel.
About this task
For more information about eXtremeMemory and its benefits versus the Java heap to store your data grid objects, see IBM eXtremeMemory. When
you are using eXtremeMemory, eXtremeIO is used for communication between container servers. Objects
are serialized into bytes on the container server. To enable eXtremeMemory, you set the required
server properties on all of the container servers in the data grid and restart the servers.
eXtremeMemory is not used on catalog servers. If you have a catalog server and a container server
that are collocated, the container servers use eXtremeMemory, but the catalog server does
not.
Procedure
-
Configure the native libraries by setting the appropriate environment variables.
Add the
wxs_install_root/ObjectGrid/native directory to the native library path.
You can set the
environment variable with one of the following ways:
- Set the LIBPATH environment variable before calling the
Java program:
export LIBPATH=$LIBPATH:wxs_install_root/ObjectGrid/native
- Set the LD_LIBRARY_PATH environment variable before
calling the Java program:
LD_LIBRARY_PATH=${LD_LIBRARY_PATH}:wxs_install_root/ObjectGrid/native
export LD_LIBRARY_PATH
- Set the java.library.path
Java system property to the location where the native
libraries are
located:
java -Djava.library.path=wxs_install_root/ObjectGrid/native <other args>
-
Update the server properties file for each container server in the configuration to enable
eXtremeMemory.
To enable eXtremeMemory, you must set the enableXM property. If you do not want the default
value of 25% of the entire system to be used for eXtremeMemory, you must also set the maxXMSize
property. After you decide on the properties that you want to set, you can set the values in the
server properties file or programmatically with the
ServerProperties interface.
For more information about determining the maxXMSize value to set, see Planning to use IBM eXtremeMemory.
- Required properties
- enableXM
- When set to true, enables IBM
eXtremeMemory on the server and configures the server to use IBM eXtremeIO for synchronous and asynchronous replication. Cache entries for maps that are
compatible with eXtremeMemory are stored in native memory instead of on the Java heap. All container servers in the data grid must use the same value for
the enableXM property.
Default:false
- Suggested properties
- maxXMSize
- Sets the maximum amount of memory, in megabytes, used by the server for eXtremeMemory
storage.
Default: 25% of the total memory on the system.
- Optional:
Tune the Java virtual machines for eXtremeMemory.
-
Enable the container servers to start using eXtremeMemory.
You can use one of the following methods to pick up the new property values:
What to do next
You can also set properties to configure eXtremeIO. For more information,
see Configuring IBM eXtremeIO (XIO).