Switching between 32-bit and 64-bit Java

  1. In the menu, click Settings > Active Profile.
  2. Click the Java icon and then the Advanced tab.
  3. Select 32-bit Java (default) or 64-bit Java.
  4. If you use 64-bit Java, specify an Execution timeout for the communication between the Silk Performer runtime and the JVM.
The specified Java architecture determines whether your Java test code is running in-process or out of process. This results in the following behavior:
  • 32-bit Java is enabled: When you execute a test, the jvm.dll and the required .jar files are loaded dynamically into the perfrun.exe. Note that this increases the memory usage of the perfrun.exe. Also be aware that during the early phase of a load test, the memory usage might be volatile. This can be misunderstood as a memory leak, but is in fact expected due to the Java garbage collector at work. By default, up to 50 virtual users share the same JVM, which helps reduce memory usage. However, this feature requires that your Java test code is thread-save (especially the static variables).
  • 64-bit Java is enabled: When you execute a test, the Java test code is running in a separate process - it is not loaded into the perfrun.exe.

You can also use the BDL function JavaSetOption to switch between 32-bit and 64-bit Java. Note that the settings defined in the BDL script override the options defined in the profile settings.