NonStop Server for Java 6.0 Programmer's Reference
When a process uses the parallel TCP/IP transport provider for socket operations (like the iTP
Secure WebServer httpd daemon Server process instance), the process becomes a QIO client. For
NonStop™ Server QIO shared-memory segments, when a QIO client process makes a socket
request, a portion of the process address space is reserved for the QIO segment. This reserved
space limits the maximum usable heap size for the JVM process.
The size of the QIO segment is determined by the configured physical memory for a processor
(CPU) on the NonStop system. For a processor on a NonStop system configured with 4 GB of
physical memory, 512 MB are used for the QIO segment. In addition, 512 MB of the user address
space are reserved for the QIO segment, if the process is also a QIO client.
To overcome the problem of losing address space to QIO, you can configure the QIO segment so
that the segment is moved to a special region of the privileged address space, called the KSEG2
region. Moving the QIO segment to the KSEG2 region means that the maximum size of the QIO
segment is restricted to 128 MB (instead of the default512 MB). Before moving QIO to KSEG2,
check that the current maximum QIO segment size in use is within the 128 MB limit (allowing for
future requirements that may increase the QIO segment size). If the maximum QIO segment size
is within the limit, you can move QIO to KSEG2.
Example: Determining the QIO Segment Size in Use
To determine the QIO segment size in use, use the following SCF command from the TACL prompt:
TACL> scf
SCF - T9082G02 - (30APR03) (01APR03) - 03/19/2004 02:20:31 System \NAVAE1
(C) 1986 Tandem (C) 2003 Hewlett Packard Development Company, L.P.
(Invoking \NAVAE1.$DATA11.RAMR.SCFCSTM)
1-> status segment $ZM00, detail.
QIO Detailed Status SEGMENT \NAVAE1.$ZM00
State.................. DEFINED
Segment State.......... STARTED
Segment Type........... FLAT_UA
Segment Size........... 536870912
MDs in Use............. 1258
Max MDs Used........... 1589
Last Fail Size......... 0
Current Pool Size...... 16774788 Initial Pool Size...... 16776992
Max Pool Size.......... 16776992 Min Pool Size.......... 16776992
Current Pool Alloc..... 5039616 Max Pool Alloc.......... 5128320
Current Pool Frags..... 12 Max Pool Frags............... 18
The maximum pool size used in this case is 16 MB, which is well below the 128 MB limit, so QIO
can be moved to KSEG2.
Example: QIO Segment Moved to KSEG2
The following SCF output shows the QIO segment as moved to KSEG2.
TACL> scf
SCF - T9082G02 - (30APR03) (01APR03) - 03/19/2004 02:20:00 System \GOBLIN
(C) 1986 Tandem (C) 2003 Hewlett Packard Development Company, L.P.
(Invoking \GOBLIN.$DATA11.RAMR.SCFCSTM)
1-> status segment $ZM00, detail
QIO Detailed Status SEGMENT \GOBLIN.$ZM00
State.................. DEFINED
Segment State.......... STARTED
Segment Type........... RESIDENT
Segment Size........... 134217728
MDs in Use............. 1248
Max MDs Used........... 2357
Last Fail Size......... 0
Current Pool Size...... 16774788 Initial Pool Size...... 16776992
Max Pool Size.......... 16776992 Min Pool Size.......... 16776992
Tuning Application Performance 67










