Disk Load Balancing, Fault Tolerance, and Configuration Limits for NonStop Systems
4
The amount of memory each volume consumes is application-dependent, but can be limited by user-
controllable disk attributes such as: CBPOOLLEN, AUDITRAILBUFFER/SQLMXBUFFER,
LKIDLONGPOOLLEN, LKTABLESPACELEN, and cache size. In general, the largest consumer of
memory is cache.
At a minimum, DP2 memory is required for stack space, internal buffers for both DP2 FM and I/O
Driver, control blocks, lock tables, work pools, etc. The minimum consumption for these areas in most
S-series systems is about 31 MB. For S70000 systems, NS-series systems, and NB-series systems, the
minimum is 47 MB.
There is typically a direct relationship between memory and processor consumption. Since this is a
processor performance issue, it will not be addressed here except to note that there is likely a
minimum memory working set for each volume below which performance is unacceptable. Also,
consider that the minimum cache configuration requires 18 MB.
The lock tables can be configured through SCF through the LKTABLESPACELEN and
LKIDLONGPOOLLEN attributes. There is one LKID Long pool, so the maximum consumption is limited
by this attribute. The default is 8 MB. The LKTABLESPACELEN attribute is applied to 4 separate tables,
so multiply this value by 4 for the total (default = 15 MB each). These tables grow as needed, and at
a minimum they consume about 1 MB.
The ADP/SQLMXBUFFER maximum size is also configurable. If the volume is not an ADP nor has
SQL/MX tables, these areas can be ignored. Otherwise, add the corresponding size to what the
volume requires.
With this in mind, the maximum number of volumes configurable in a processor is determined by
memory consumed by cache and user-controllable attributes. The absolute minimum requirement is the
minimum (31 MB) + cache (18 MB) + lock tables (1 MB) = 50 MB. From the physical memory size,
subtract the size of the working set for memory used by all other non-disk system and customer
processes to determine how much memory is left for disks.
For example, for an 8 GB processor, assuming system + customer processes, consume 2 GB, there is
6 GB available = 120 disks. For a 4 GB processor with 3 GB available for disks, the maximum is
about 60 disks. An S70000, NS-series, or NB-series system has a higher minimum memory usage (47
MB vs. 31 MB), so the equivalent calculations show that 6 GB of available memory supports 90 disk
IOPs and 3 GB of available memory supports 45 disk IOPs.
Note that the values used in this example will be different between hardware platforms, and may
change significantly from one RVU to another.
For some system configurations, a calculation based on path count (see the Adapters, SACs, CLIMs,
and Configuration Limits in the following section) will produce a smaller maximum number of volumes
than this calculation based on memory limitations. The effective limit is the smaller of the two limits.
ServerNet
All generations of NonStop systems contain two separate ServerNet fabrics, named X and Y. In any
system, adapters in S-series I/O enclosures are single-fabric so it is important to configure a disk's -P
(primary) and -MB (mirror backup) paths through adapters using one fabric and configure the -B
(backup) and -M (mirror) paths through adapters on the other fabric. Adapters in slots 50, 51, and 53
are on the X fabric. Adapters in slots 52, 54, and 55 are on the Y fabric. The separation of -P from -B
and -M from -MB provides fault tolerance. The separation of -P from -M provides load balancing
because a write to a mirrored volume goes to both drives and the -P and -M paths are the active paths
by default.










