Tuning HP-UX systems

This topic describes how to tune the HP-UX operating system to optimize the performance of your WebSphere Application Server. Because the HP-UX operating system is not a WAS product, be aware that it can change and results vary

 

Before you begin

On the HP-UX operating system, WAS runs on the Java virtual machine (JVM), which is based on the technology of Sun HotSpot JVM. Properly tuning this JVM significantly affects WebSphere Application Server performance by fully utilizing its performance optimizing characteristics. See the Tuning Java virtual machines topic for details on setting up the JVM on the HP-UX system. It is also important to change some parameters that are specific to the HP-UX operating system to prevent WAS from being deprived of resources.

 

Overview

When you have a performance concern, check the operating system settings to determine if they are appropriate for your application.

 

Steps for this task (dependent on configuration)

  • Tuning the HP operating system with the DB2 type 2 JDBC driver

    When using the type 2 Java Database Connectivity (JDBC) driver on the HP operating system with DB2, one can increase the performance of WAS by preallocating the DB2 trace segment. Perform the following steps:

    1. Before starting Application Server, switch to the user that is associated with the DB2 instance.

    2. Run the db2trc alloc command.

    3. Start Application Server.

    Usage note: Use the type 4 driver for best performance and compatibility.

    Another issue with the type 2 JDBC driver on the HP operating system is code page conversion. Creating the database using the UTF-8 code set avoids this problem and significantly increases performance. See the database documentation for instructions on creating databases with a specific code set. Refer to DB2 tuning parameters for information about DB2 tuning parameters.

    The HP performance tuning parameters

    Modify HP-UX 11i settings to significantly improve WAS performance. For additional information about the HP performance tuning parameters, see Performance: Resources for learning.

    • Java virtual machine (JVM) virtual page size

      • Description: Sets the JVM instruction and data page sizes to 64MB to improve performance.

      • How to view or set: Use the chatr +pi64M +pd64M /opt/WebSphere/AppServer/java/bin/PA_RISC2.0/native_threads/java command. The command output provides the current operating system characteristics of the process executable.

      • Default value: 4MB, if not assigned

      • Recommended value: 64MB

    • HP-UX 11i TCP_CONN_REQUEST_MAX

      • Description: Specifies the maximum number of connection requests that the operating system can queue when the server does not have available threads. When high connection rates occur, a large backlog of TCP/IP connection requests build up and client connections are dropped. Adjust this setting when clients start to time out after waiting to connect. Verify this situation by issuing the netstat -p tcp command. Look for the following value: connect requests dropped due to full queue

      • How to view or set: Set this parameter by using the ndd -set /dev/tcp tcp_conn_request_max 8192 command.

      • Default value: 4096

      • Recommended value: In most cases the default is sufficient. Consider adjusting this value to 8192, if the default proves inadequate.

    • HP-UX 11i kernel parameter recommendations

      • Description: One of the main functions of kernel parameters is to control the number of available resources. It is important to alter the HPUX kernel parameters to ensure that WAS has enough resources available to run optimally. Use the kernel parameter settings in the following table. Set these parameters using graphical System Administration Manager. Type sam at the command line to launch the utility.

        Kernel parameter WebSphere Application Server setting DB2 setting Oracle setting
        maxuprc -- 512 --
        maxfiles 2,048 -- --
        maxfiles_lim 2,048 -- --
        nkthread 10,000 -- --
        max_thread_proc 2,048 -- --
        nproc -- 1,028 --
        nflocks -- 8,192 --
        ninode -- 2,048 --
        nfile -- 8,192 --
        msgseg -- 32,767 --
        msgmnb -- 65,535 --
        msgmax -- 65,535 --
        msgtql -- 1,024 --
        msgmap -- 258 --
        msgmni -- 256 --
        msgssz -- 16 --
        semmni -- 512 70
        semmap -- 514 --
        semmns -- 1,024 200
        semmnu -- 1,024 --
        shmmax -- 966,367,642 1 GB
        shmmseg -- 16 10
        shmmni -- 300 100

      • How to view or set: Use the HP-UX SAM utility to set the kernel parameters. See the documentation for your operating system for directions.

      • Default value: None

      • Recommended value: See table

    • TCP_KEEPALIVE_INTERVAL

      • Description: Determines the interval between probes.

      • How to view or set: Use the ndd command to determine the current value or to set the value. For example:

        ndd -set /dev/tcp tcp_keepalive_interval 15000

      • Default value: None

      • Recommended value: 15000 milliseconds

    • TCP_KEEPALIVE_KILL

      • Description: Determines the maximum number of times to probe before dropping.

      • How to view or set: Use the ndd command to determine the current value or to set the value. For example:

        ndd -set /dev/tcp tcp_keepalive_kill 5000

      • Default value: None

      • Recommended value: 5000 milliseconds

  • Keeping current with the operating system and Java patches is one of the most important things one can do to optimize the performance of a server. For the latest Java patches, visit the following Web site:

    HP-UX Patch Information

    Also, for the latest operating system quality pack, visit the following Web site:

    Support Plus: Quality Pack Bundles

 

Result

This tuning procedure improves performance of WebSphere Application Server on the HP-UX operating system.

 

What to do next

After tuning your operating system for performance, consult the other tuning topics for various tuning tips.


 

Related Tasks


Tuning Windows systems
Tuning Linux systems
Tuning AIX systems
Tuning Solaris systems