How to fine-tune your Rational Performance Tester playback

White paper


Abstract

What parameters are available to override default playback settings of an IBM Rational Performance Tester script? What are the available values and what effect do they have?

Content

In two places you can set parameters.

  1. The parameters in eclipse.ini
  2. RPT_VMARGS parameter in the Rational Performance Tester user interface


How to set the RPT_VMARGS parameter

Perform the following steps to set the parameter:

  1. Open the Location in the Test Navigator

  2. Click tab General Properties

  3. Click Add

  4. Enter the RPT_VMARGS in the field Property

  5. Enter a value in the fields Property Value

  6. If specifying multiple parameters, separate them by a space

    For example:
    RPT_VMARGS = -DrptLargePostReportSize=9000 -Xmx1500m -DrptNanoTime



Figure 1 - Steps 2 and 3.





Figure 2 - Steps 4 and 5.



Overview

You can influence the following settings and behaviors.

  • The POST content size in the Test Log.
  • The time measurement accuracy.
  • The Java maximum heap size.
  • Include the page response times in the response time counters.
  • Heartbeat time-out.
  • Maximum of playback engine threads.
  • SSL session ID sharing and debugging.
  • Kerberos debugging.
  • Page response time calculation.
  • Citrix debugging.
  • Test Log file management.
  • Connection Keep-alive behavior.

The following values are available for RPT_VMARGS.

In addition to these values, other RPT_VMARGS values and eclipse.ini are available in Rational Performance Tester 8.2 and later. In general, use these values for special cases only, because these values have potentially unwanted side-effects. Also, keep in mind that these values may be changed in future versions of Rational Performance Tester. Unless otherwise stated, the values apply to RPT_VMARGS.


Details

-DrptLargePostReportSize=nnnn

For efficiency, Rational Performance Tester by default does not save large POST content in the Test Log; instead the Test Log shows the message <DISPLAY TRUNCATED> in the Request tab of the Protocol Data. You can override this with

-DrptLargePostReportSize=nnnnn

where nnnn is the maximum number of characters to log. For example, -DrptLargePostReportSize=90000 would make the complete POST content visible for any request with 90000 or fewer characters. This setting has no effect on the characters that you actually sent to the server.



-DrptNanoTime

Use this option to enable the high resolution timer for Windows, IBM AIX, and IBM z/OS agents. The timer is already used for Linux. The high-resolution timer makes all measurements are precise to within 1 millisecond. Note that enabling the high-resolution timer can increase processor usage on Windows agent computers by 10% to 25%.



-Xmx

This value specifies the Java maximum heap size. You can also use this option in the .eclipse.ini to specify a maximum size for the workbench.

For example, -Xmx1200m specifies a maximum heap size of 1200 Mb. Typically this option is not necessary since Rational Performance Tester will automatically set the maximum heap size for the location using the RPT_DEFAULT_MEMORY_SIZE property.



-DrptIncludeErrorRTStats=true

By default, response time counters omit page response times for pages that contain requests with status codes in the range of 4XX (client errors) to 5XX (server errors). If you set this value to true, Rational Performance Tester includes these response times.


-DrptRunnerHeartBeatTimeout=nnnn

This value specifies how long the agent waits for a heartbeat message from the workbench. In Rational Performance Tester 8.2.0.4 and newer, a corresponding option for the workbench is available.




-DrptWorkbenchHeartBeatTimeout=nnnn

You set this value in the eclipse.ini , not in RPT_VMARGS. The default is 60 second. The unit of nnnn is millisecond.


-DrptThreadCount=nnn

This value sets the initial number of playback engine threads; the default is 30. You would increase this value, if you determined that a playback was in a deadlock due to not enough available threads to apply the workload. The best way to determine this would be to look for the following entries in the Rational Performance Tester Engine Room (http://<agent>:1903).

  • "Action queue size" greater than 0
  • all Engine threads WORKING

Rational Performance Tester will under certain circumstances automatically increase the number of threads (see -DrptMaxThreadCount). Be careful when increasing this value; if you set it too high it can cause excessive CPU use.



-DrptMaxThreadCount=nnn

Sets the maximum number of playback engine threads; If you set -DrptThreadCount, you should also set -DrptMaxThreadCount to at least the same value.

For example:

-DrptThreadCount=100 -DrptMaxThreadCount=100


-DrptStaticContext

The effect of this value is that all the virtual users in a given JVM share SSL Context. In this way they share SSL Session IDs. By default, each Rational Performance Tester virtual user will have its own SSL Context . Therefore virtual users do not share SSL Session IDs.

If you have a server that responds to a request for session resumption with a different virtual user's session ID, you can use -DrptStaticContext to have shared SSL Session IDs. Most applications should not use this option.


-Dcom.ibm.security.jgss.debug=all -Dcom.ibm.security.krb5.Krb5Debug=all

Set these two flags to enable additional Kerberos-related debugging information. The additional debugging goes in the CommonBaseEvents00.log file; also set the Problem Determination Log level to All.


-Djavax.net.debug=ssl:handshake

Set this flag to get additional SSL debugging in the CommonBaseEvents00.log file; you should also set the Problem Determination Log level to All.


-DrptSingleSSLCipher=true

If you want Rational Performance Tester to only use the specific cipher in the test, set this value. By default Rational Performance Tester tries a set of SSL ciphers, when doing an SSL handshake, starting with the cipher specified in the SSL object in the test. For example SSL_RSA_WITH_RC4_128_MD5.


-DrptPre811PageResponseTimes

In the 8.1.1 release, Rational Performance Tester modified the page response time calculation. As a consequence the tool would adjust the actual elapsed time to omit "overhead" time such as data correlation, custom code, and others. This means that the reported response times might be less than the actual elapsed time, when you would observe on a clock. If you set this value, the page response time calculation will revert to the behavior of releases older than v8.1.1.



-DrptCitrixMonitoringPanel=true

This setting enables the Citrix Monitoring Panel during playback and is useful for debugging.



-DrptSaveTempFiles=true

Add this option to an agent to instruct it to keep its Test Log files in the deployment directory after the playback finishes. By default, the agent sends the Test Log files to the workbench at the end of the playback and deletes the files in the deployment directory. This option is useful when the Test Log transfer stops, because you can then re-construct the Test Log.



-DrptTestLogFile=

Specify a location for the agent to keep a copy of XML-formatted Test Log related data. After the equal sign you specify a full path to a directory on the agent .

For example:

C:\Agent\Agent1.xml.

You can use this in conjunction with -DrptSaveTempFiles=true. With the XML file and the saved deployment Test Log files, it might be possible to re-create the Test Log.


-DKEEP_ALIVE_ACROSS_TEST=true  

This setting controls connection Keep-Alive behavior across test invocations. The default false behavior is to close any open connections at the end of execution of a test. Value true does not close any open connections when the test completes. The latter can be useful, if you perform looping at the schedule level and you want to share connections from one invocation to the next.


-DKEEP_ALIVE_ACROSS_LOOPS_WITHIN_TEST=false  

With this setting you control connection Keep-Alive behavior in certain instances when a test contains loops. Normally with no looping in a test, Rational Performance Tester detects the last request to use a particular connection. The tool then closes that connection after the response. If this same condition occurs but the request is in a loop within a test, by default Rational Performance Tester will not forcefully close the connection. If you set this option to false, Rational Performance Tester will always close the connection after the last response regardless of whether it is in a loop or not.

Related information

Increasing memory allocation
Configuring the high-resolution timer
Performance testing tips

Rate this page:

(0 users)Average rating

Document information


More support for:

Rational Performance Tester
Record / Author tests

Software version:

8.2, 8.2.0.1, 8.2.0.2, 8.2.0.3, 8.2.0.4, 8.2.0.5, 8.2.0.6, 8.2.1

Operating system(s):

Linux, Windows

Reference #:

7022226

Modified date:

2011-11-15

Translate my page

Machine Translation

Content navigation