|Applies To||RSA Access Manager Authorization Server 6.0.2|
|Issue||AxM - Access Manager 6.0.x JVM 1.5 recommended settings|
6.0 uses the 1.5 JRE/JVM. There were "custom" settings for 5.5.x and the 1.4 JVM...i.e.:
-verbose:gc -Xnoclassgc -XX:+PrintGCDetails \
-XX:NewSize=64m -XX:MaxNewSize=64m -XX:+UseParNewGC -XX:+UseConcMarkSweepGC \
-XX:CMSInitiatingOccupancyFraction=60 -XX:+CMSParallelRemarkEnabled \
-XX:MaxTenuringThreshold=0 -XX:SurvivorRatio=128 \
A few of these params aren't used in the 1.5 JVM (i.e., UseParNewGC, CMSParallelRemarkEnabled, and MaxTenuringThreshold)...any "new" recommendations for the 6.0 release??
Based on Access Manager 6.0 tests on Sun JVM 1.5,the 1.5 JVM is self tuning. In AxM 6.0 performance testing on Solaris 9 & 10, Linux & AIX, the only GC flags added were ?XX:+UseParallelGC & -XX:ParallelGCThreads along with Min & Max heap settings. No other flags had any effect on performance.
XX:ParallelGCThreads= variable value based on the heap size and load generated on the machine. For 1 GB heap, 2 to 4 should be optimal value with dual CPU with hyperthreading enabled. A client with 1 CPU with GCThreads to 4 would not have any impact.
The amount of memory defined in the Min & Max heap size settings depends on the amount of available physical memory available on the machine. How much one is willing to dedicate to the jvm is dependent on customer work load, number of users, number of protected urls, basically some of the cache sizes of the aserver.
In RSA Performance testing, the Min & Max heap settings have been set to the same value,2 GB or more on Solaris or AIX 64-bit platform. If running on Windows 32 bit platform, in most cases if enough physical memory is available, the Min should be 256 or 512m And the Max heap sizes should be set to 1024m (or 1 Gig).
|Workaround||Upgrade from 5.5.x to 6.0 . Aserver JVM settings|
|Notes|| The 1.5 JVM was released with garbage collections improvements. From Suns web site ?New in the J2SE|
Platform version 1.5 is a feature referred to here as ergonomics. The goal of ergonomics is to provide good performance from the JVM with a minimum of command line tuning. Ergonomics attempts to match the best selection of Garbage collector,Heap size,Runtime compiler for an application. ?
Also see solution What are the recommended JVM garbage collection settings for the 1.5 JRE in Access Manger 6.0.4.
|Legacy Article ID||a40453|