PingFederate reads JVM options from the jvm-memory.options file,
located in the
<pf_install>/pingfederate/bin
directory. Any manual modifications or additions should be made in this file. It is also
recommended that a backup copy be made prior to any manual edits. Note that empty lines
and comments (indicated by a leading #
character) are ignored.
Additionally, JVM options are not required to be organized in any specific order.
-
Edit the
<pf_install>/pingfederate/bin/jvm-memory.options
file.
-
To configure a specific heap size, edit the minimum (
-Xms
) and maximum (-Xmx
) heap options.The valid unit qualifiers arek
for kilobytes,m
for megabytes, andg
for gigabytes. In other words,-Xmx1536m
and-Xmx1.5g
are equivalent.For example, to fix the JVM heap size to 2 GB, configure the minimum and maximum options as follows:
-Xms2g -Xmx2g
-
To override the number of garbage collection threads used by the parallel collector, add
the
-XX:ParallelGCThreads=n
option, where n is the desired number of garbage collector threads.For example, to configure the parallel collector to use four threads, add to the configuration file the following option:
-XX:ParallelGCThreads=4
-
To enable the concurrent mark sweep (CMS) collector, remove the
-XX:+UseParallelGC
option (or the options pertaining to another garbage collector) and replace it with the-XX:+UseConcMarkSweepGC
option. -
To enable the garbage first (G1) collector, remove the
-XX:+UseParallelGC
option (or the options pertaining to another garbage collector) and replace it with the‑XX:+UseG1GC
option.Note:If you enable the G1 collector, it is recommended that you remove any sizing options specific to the young generation. Skip to this step.
-
To configure young generation-specific sizing options, edit the minimum
(
-XX:NewSize
) and maximum (-XX:MaxNewSize
) options for the young generation space.For example, to fix the young generation bias to 1 GB, set the minimum and maximum options as follows:
-XX:NewSize=1024m -XX:MaxNewSize=1024m
-
To remove young generation-specific sizing options completely, remove the aforementioned
options or add a leading
#
character. -
To add additional JVM options, insert the applicable options to the file.
For example, to enable the aggressive options flag, configure the file as follows:
... # Enable the aggressive options flag -XX:+AggressiveOpts
(The comment is optional.)
- When finished, save your changes.
-
If PingFederate is configured to run as a service on a Windows server, follow these
steps:
- Open a command prompt and go to the <pf_install>/pingfederate/sbin/wrapper directory.
-
Run generate-wrapper-jvm-options.bat.
This helper utility reads the JVM options from the jvm-memory.options file and creates a resource file that the PingFederate Windows service requires to configure its JVM options.
- Close the command prompt.
- Restart PingFederate.
- For a clustered PingFederate environment, repeat these steps on each engine node as needed.