NLRUQ parameter: Difference between revisions
m (→Description: add 7.7 impact) |
m (add link) |
||
Line 44: | Line 44: | ||
<li>If a <var>[[MONITOR MPLOCK command|MONITOR MPLOCK]]</var> command output reveals a high conflict count for LRU queue locks, increase <var>NLRUQ</var> and <var>[[NLRUQG parameter|NLRUQG]]</var>.</li> | <li>If a <var>[[MONITOR MPLOCK command|MONITOR MPLOCK]]</var> command output reveals a high conflict count for LRU queue locks, increase <var>NLRUQ</var> and <var>[[NLRUQG parameter|NLRUQG]]</var>.</li> | ||
</ul> | |||
==See also== | |||
<ul> | |||
<li><var>[[NLRUQG parameter|NLRUQG]]</var> </li> | |||
</ul> | </ul> | ||
[[Category:System parameters]] | [[Category:System parameters]] | ||
[[Category:Parameters]] | [[Category:Parameters]] |
Latest revision as of 23:26, 25 August 2016
# 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 below the bar (BTB) disk buffer pool. With NLRUQ greater than 1, it would be possible for a page to be stolen from the BTB buffer pool before one that was less recently used.
Note: As of version 7.7 of Model 204, whether BTB buffers are used at all depends entirely on the setting of NUMBUFG, which activates buffer storage above the bar.
- If NUMBUFG is greater than 0, all buffer pool buffers are forced above the bar — no buffers are below the bar. The MINBUF and NUMBUF parameters are forced to 0, and the other parameters that affect BTB storage (MAXBUF, SPCORE, LDKBMWND, and NLRUQ) are ignored.
- If NUMBUFG is set to 0, all buffers are below the bar, and the settings of the BTB-related parameters are respected and calculated as in pre-7.7 versions.
If BTB buffers are used
When BTB buffers are being used (that is, NUMBUFG is 0 under version 7.7 or higher, or NUMBUFG is any value under Model 204 prior to 7.7):
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 BTB disk buffers used in an Online:
- A reasonable guess for a proper NLRUQ value adds two for each MP subtask, so a setting of
NMPSUBS=1
suggestsNLRUQ=3
, andNMPSUBS=7
suggestsNLRUQ=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.