Tune the Java Virtual Machine properties

The Java™ Virtual Machine (JVM) heap is the amount of available memory allocated to the Java virtual machine. The JVM minimum and maximum values are set based on heap size studies, with different values for 64-bit WebSphere® running a 64-bit JVM, and 31-bit WebSphere running a 31-bit JVM.

Figure 1 displays the JVM properties. The selected settings are:
  • EJB cache setting is changed from the default value to 16533.
  • Both the heap minimum and maximum values are set to the optimum values for the workload, 6144.
  • Verbose garbage collection is selected in order to record that information.
  • Under the Generic JVM arguments, these settings are added:
    -Dcom.ibm.ws.pm.batch=true
    -Dcom.ibm.ws.pm.deferredcreate=true
    -Dcom.ibm.CORBA.FragmentSize=3000
The Generic JVM arguments:
com.ibm.ws.pm.batch=true
The flag is used when an application updates multiple container-managed persistence (CMP) beans inside of a single transaction. This flag can be used to allow batching of the update so that one transaction containing both update transactions is presented to the database instead of two or more transactions. This flag is used only when the database supports batching of update operations, and the application regularly accesses multiple CMP beans for update. This saves round trips to the database, improving performance on these operations.
com.ibm.ws.pm.deferredcreate=true
The flag also provides a performance benefit on an ejbCreate() method call. The default behavior is to immediately insert an empty row into the database with only the primary key. Most transactions then modify fields within the bean, so the insertion of the row into the database can be deferred until the data in the rows is actually present, saving a database call.
com.ibm.CORBA.FragmentSize=3000
The setting makes the size of the Object Request Broker (ORB) fragment 3000 bytes. The ORB separates messages into fragments to send over the ORB connection. The 3000 byte size was calculated to be a good size for this workload.
Figure 1. Java Virtual Machine settings
JVM heap size settings page