Optimize Performance by Setting the JVM Heap Size

You can improve memory performance by increasing the default JVM heap size for the Administration Server and Managed Servers in the startup script for Oracle WebLogic Server.

Newly deployed web application server instances use default memory heap settings, which are often too small to accommodate Oracle Analytics Server 64-bit requirements. You can use these steps to increase the JVM heap size SERVER_MEM_ARGS parameters using the values recommended here.

Make sure you have enough physical memory allocated available on the servers and then use the settings below as a starting point, and after load testing, adjust as needed. For a stable even performance over time, you must set the minimum JVM heap size (-Xms) to the same value as the maximum JVM heap size (-Xmx)

This procedure sets the same parameter values for both the Administration Server and Managed Servers.

  1. Stop the Administration Server and Managed Servers. See Start and Stop Your System.
  2. Set the JVM heap size of the Managed Server:
    1. Browse to <Oracle_Home>/user_projects/domains/bi/bin and backup the file setStartupEnv.sh (Linux) | setStartupEnv.cmd (Windows).
    2. Edit setStartupEnv.sh (Linux) | setStartupEnv.cmd (Windows) and update the following in the section "${STARTUP_GROUP}" = "BISUITE-MAN-SVR“:
      # 64 bit JVM memory settings
      
              SERVER_MEM_ARGS_64="-Xms4g -Xmx4g"
      
              export SERVER_MEM_ARGS_64
      
              SERVER_MEM_ARGS_64HotSpot="-Xms4g -Xmx4g"
      
              export SERVER_MEM_ARGS_64HotSpot
      
              SERVER_MEM_ARGS_64JRockit="-Xms4g -Xmx4g"
      
              export SERVER_MEM_ARGS_64JRockit
    If Oracle Analytics Publisher receives substantial use and the machine has sufficient physical memory, then consider configuring the JVM memory of the Managed Server larger than 4GB.
  3. Set the JVM heap size of the Administration Server:
    1. Browse to <Oracle_Home>/user_projects/domains/bi/bin and back up the file setStartupEnv.sh (Linux) | setStartupEnv.cmd (Windows).
    2. Edit setStartupEnv.sh (Linux) | setStartupEnv.cmd (Windows) and update the following lines highlighted in bold inside the section "${STARTUP_GROUP}" = "AdminServerStartupGroup“:
      # 64 bit JVM memory settings
      
              SERVER_MEM_ARGS_64="-Xms1024m -Xmx4096m"
      
              export SERVER_MEM_ARGS_64
      
              SERVER_MEM_ARGS_64HotSpot="-Xms1024m -Xmx4096m"
      
              export SERVER_MEM_ARGS_64HotSpot
      
              SERVER_MEM_ARGS_64JRockit="-Xms1024m -Xmx4096m"
      
              export SERVER_MEM_ARGS_64JRockit
  4. After setting the parameters, save and close the file, then restart the Administration Server and Managed Servers for the changes to take effect.
  5. In a scaled-out system, repeat these steps for each domain home.

    The settings are now copied over when you horizontally scale-out.