Minimum number of buffers
- Default value
- Calculated using the formula: (NSERVS + NSUBTKS) * MAXOBUF + 15
- Parameter type
- Where set
- On User 0's parameter line
- Related products
- Model 204 V9.0 or earlier
The minimum number of file page buffers that must be allocated below the bar (BTB) for initialization to succeed. If this number cannot be allocated due to insufficient virtual storage, initialization is terminated.
Note: As of version 7.7 of Model 204, the value of MINBUF 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), the MINBUF parameter is automatically set to its smallest allowable value. The minimum valid value for MINBUF is the number of servers (the value of the NSERVS parameter) plus the maximum number of pseudo subtasks (the value of NSUBTKS parameter), times the maximum number of open disk buffers per server (the value of the MAXOBUF parameter), plus fifteen, represented as follows:
(NSERVS + NSUBTKS) * MAXOBUF + 15
If NLRUQ is set greater than 1, then the value of MINBUF is rounded up to a multiple of NLRUQ.
If MINBUF is set to a value greater than MAXBUF, MAXBUF is automatically reset to the value of MINBUF. You do not need to set the MAXBUF parameter in the User 0 stream, unless you want its value to differ from the value of MINBUF.
For SQL processing
Sort operations require more buffers and other SQL DML (Model 204 SQL Data Manipulation) operations can increase disk buffer activity.
The recommended formula for MINBUF with SQL depends on the number of servers (NSERVS parameter) and the number of SQL threads (numSQL):
If NSERVS is less than the number of SQL threads:
MINBUF = 18 * NSERVS
If NSERVS is greater than or equal to the number of SQL threads:
MINBUF = 4 * (NSERVS - numSQL) + (18 * numSQL)
For example, if NSERVS is 4 and the number of SQL threads is 3, the recommended value of MINBUF is:
4 * (4 - 3) + (18 * 3) = 58
For more information about page buffers: