NLRUQ parameter

From m204wiki
Revision as of 22:49, 18 August 2016 by JAL (talk | contribs) (minor formatting)
Jump to navigation Jump to search

# of DKBM LRU queues

Summary

Default value
1 (also the minimum)
Parameter type
System
Where set
Not resettable
Related products
All
Introduced
Model 204 V6.1

Description

The NLRUQ parameter reduces contention on the MP lock that protects the reuse queues. This MP lock is a primary source of MP overhead.

Setting NLRUQ greater than 1 has no benefit in a non-MP run. In fact, in all cases, a setting greater than 1 might result in a slight increase in disk I/O, owing to a loss in precision in the least-recently-used algorithm for managing the disk buffer pool. With NLRUQ greater than 1, it would be possible for a page to be stolen from the buffer pool before one that was less recently used.

NLRUQ=1 preserves the single reuse queue model used in releases of Model 204 before V6R1.0.

NLRUQ is used as a multiplier to determine the minimum number of disk buffers used in an Online:

MINBUF >= NLRUQ * ((NSERVS + NSUBTKS) * MAXOBUF + 15)

A reasonable guess for a proper NLRUQ value adds two for each MP subtask, so a setting of NMPSUBS=1 suggests NLRUQ=3, and NMPSUBS=7 suggests NLRUQ=15.

If NLRUQ is set greater than 1, the values of LDKBMWND, MAXBUF, and MINBUF are all rounded up to a multiple of NLRUQ. The maximum setting for NLRUQ is 255.

If a MONITOR MPLOCK command output reveals a high conflict count for LRU queue locks, increase NLRUQ and NLRUQG.