eqmem_limit(5)eqmem_limit(5)NAMEeqmem_limit - determines the maximum amount (in MB) of equivalently
mapped memory which can be allocated after boot
VALUES
Default
system-determined
Allowed values
When an explicit value is used, it is interpreted as a number of
megabytes.
Recommended value
The system-determined default.
DESCRIPTION
Equivalently mapped memory is memory which has the same physical and
virtual address. On PA-RISC systems, this type of memory is required
for some kernel structures. Most of these are allocated in early boot,
but some are allocated whenever memory is added to the system; equiva‐
lently mapped memory may also be used by some device drivers, and a
very small number of kernel intrusive applications.
Upon boot, the HP-UX kernel selects some memory as potentially equiva‐
lently mappable. Only those pages can ever be given equivalent map‐
pings. When not required for equivalent memory, these pages can and
will be used for other purposes, so it's generally desirable to have a
large number of pages designated as equivalently mappable. If the is
set to its default the kernel will compute an appropriate limit. This
limit will be conservative, intended to ensure that there will be
enough to support Online Addition (OLA) of a maximum amount of memory.
If the tunable is set to a non-default value then that limit will be
used.
Note that this tunable only provides an upper bound. Given the reali‐
ties of dynamic addition of memory, it is legal - and normal - for the
limit to be set to more memory than is currently present. Moreover,
memory can only be used for equivalently mapped kernel memory if it is
non-ejectable and its physical address corresponds to a legal virtual
address for dynamic kernel memory. Thus, the actual amount of equiva‐
lently mappable memory may be less than either the or the total memory
on the system.
Who is Expected to Change This Tunable?
Cache-Coherent Non-Uniform Memory Access (ccNUMA) systems making lim‐
ited use of online addition of memory.
Systems making extreme use of online addition of memory, and also using
significant equivalently mapped memory for other purposes.
Restrictions on Changing
This tunable only exists on PA-RISC systems.
Changes to this tunable take effect at the next reboot.
When Should the Value of This Tunable Be Changed?
For best performance on ccNUMA systems, certain shared data structures
should be allocated from interleaved memory. If all available inter‐
leaved memory has been designated equivalently mappable, and cell local
memory is available, these structures will be allocated out of cell
local memory.
If a system has a mix of interleaved and cell local memory, and there's
no intention of performing online addition of memory, or the total that
will ever be added is much less than the maximum supported, then the
tunable can be used to limit the total that will be designated equiva‐
lently mappable, thereby causing more of these structures to be allo‐
cated from interleaved memory.
It may also be desired to reconfigure such systems with more inter‐
leaved memory and less cell local memory.
A conservative lower limit for the value of this tunable would be 2% of
the total memory expected to ever be added online, or a couple of
megabytes, whichever is larger. A less conservative limit would be 1%
of total memory (initial and OLA'd, or 0 if no OLA will ever occur, and
it's known that there are no drivers or applications requiring equiva‐
lent memory).
It is not especially useful to change this tunable on systems which
support neither online memory addition nor cell local memory. It's
also generally not especially useful to change it on small ccNUMA sys‐
tems, having only a handful of localities (cells).
The default value is extremely conservative, and should support online
addition of more memory than is actually possible, with lots of equiva‐
lently mappable memory left over for the rare applications and drivers
which might need it -- provided that there's sufficient physical memory
that's actually equivalently mappable (non-ejectable, not cell local,
and having physical addresses in the legal range for kernel dynamic
virtual addresses). However, memory designated as equivalently map‐
pable may be used for other purposes, and it's conceivable that usage
patterns might result in its unavailability when needed for OLA. If
such a problem is encountered, it may be useful to raise the tunable
value above the computed default value. (This should probably be done
only on the advice of HP customer support engineers.)
What Are the Side Effects of Changing the Value?
If the total amount of memory designated as equivalently mappable is
too low, allocations will fail. This can result in the failure of
online addition of memory, or of devices whose drivers require equiva‐
lent memory.
If the total amount of memory designated as equivalently mappable is
too high somewhat reduced performance may be experienced for accesses
to shared structures on ccNUMA systems.
Values above 104856 (1024 * 1024 MB, i.e. 1 Terabyte) are unsupported,
and should be avoided except on the advice of a customer support engi‐
neer.
What Other Tunable Values Should Be Changed at the Same Time?
None.
WARNINGS
All HP-UX kernel tunable parameters are release specific. This parame‐
ter may be removed or have its meaning changed in future releases of
HP-UX.
Installation of optional kernel software, from HP or other vendors, may
cause changes to tunable parameter values. After installation, some
tunable parameters may no longer be at the default or recommended val‐
ues. For information about the effects of installation on tunable val‐
ues, consult the documentation for the kernel software being installed.
For information about optional kernel software that was factory
installed on your system, see at
AUTHOR
was developed by HP.
PA-RISC System Only Tunable Kernel Parameters eqmem_limit(5)