SQL/MP Installation and Management Guide

Enhancing Performance
HP NonStop SQL/MP Installation and Management Guide523353-004
14-20
Changing the PFS Size Limit
This example changes the threshold from the default value of 70 percent memory
utilization to 50 percent utilization by setting this DEFINE value:
> ADD DEFINE =_SQL_EXE_DOUBLE_SHUTOFF,
CLASS MAP, FILE X5
This example uses the file name X5. The letter X has no significance; it is used to
satisfy the syntax of the FILE parameter. The number 5 specifies a 50 percent PFS
utilization threshold. In this DEFINE, the numbers 0 through 10 indicate tenths of the
PFS size limit. For example, 2 indicates 20 percent; 9 indicates 90 percent.
Thus, if you set this DEFINE value to 0, the SQL executor directs the file system never
to use double buffering. If you set the value to 10, the executor uses double buffering
whenever it is specified in a query execution plan.
This DEFINE influences the file system through the SQL executor; the DEFINE affects
the use of double buffering at run time. (The optimizer already must have specified
double buffering in the query execution plan.)
Changing the PFS Size Limit
You can increase (or decrease) the PFS size limit by using the PFS option in the TACL
RUN command or by setting the PFS size with the Binder or nld utility.
The default PFS size for a SQL program is 384 KB. If you SQL compile a program
using the NOREGISTER option, the default PFS size is 256 kilobytes (KB). The
maximum PFS size allowed by the operating system is one megabyte.
This example uses the Binder CHANGE command to increase the PFS size of a
program named MYPROG to one megabyte:
1> BIND
@ CHANGE PFS 1048576 BYTES IN MYPROG
@ EXIT
This example uses the TACL RUN command to increase the PFS size to one
megabyte. The number 512 specifies the number of 2048-byte pages allocated to the
PFS:
1> RUN MYPROG /PFS 512/
For more information about these options, see the TACL Reference Manual, Binder
Manual, or nld and noft Manual.