NLRUQ parameter: Difference between revisions
Line 15: | Line 15: | ||
==Description== | ==Description== | ||
<p>The NLRUQ parameter reduces contention on the MP lock that protects the reuse queues. </p> | <p>The NLRUQ parameter reduces contention on the <var>[[Performance_monitoring_and_tuning#Multiprocessing_.28MP.2F204.29|MP]]</var> lock that protects the reuse queues. </p> | ||
<p>This MP lock is a primary source of MP overhead. Setting this parameter to greater than 1 has no benefit in a non-MP run. In fact, in all cases a setting of greater than 1 might result in a slight increase in disk I/O, due 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.</p> | <p>This MP lock is a primary source of MP overhead. Setting this parameter to greater than 1 has no benefit in a non-MP run. In fact, in all cases a setting of greater than 1 might result in a slight increase in disk I/O, due 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.</p> | ||
<p>NLRUQ=1 preserves the single reuse queue model used in releases of <var class="product">Model 204</var> before V6R1.0. </p> | <p>NLRUQ=1 preserves the single reuse queue model used in releases of <var class="product">Model 204</var> before V6R1.0. </p> |
Revision as of 15:10, 25 August 2015
# 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 this parameter to greater than 1 has no benefit in a non-MP run. In fact, in all cases a setting of greater than 1 might result in a slight increase in disk I/O, due 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.
In the following formula NLRUQ is used as a multiplier to determine the minimum number of disk buffers used in an Online.
MINUF >= NLRUQ * ((NSERVS + NSUBTKS) * MAXOBUF + 15)
A reasonable guess for a proper NLRUQ would be adding two for each MP subtask so that a NMPSUBS=1 would suggest NLRUQ=3 and NMPSUBS=7 would suggest NLRUQ=15.
If NLRUQ is set greater than 1, then the values of LDKBMWND, MAXBUF, and MINBUF are all rounded up to a multiple of NLRUQ. The maximum setting for NLRUQ is 255.
A high conflict count for LRU queue locks that would appear in MONITOR MPLOCK command output indicates that you should increase NLRUQ and NLRUQG.