NAME
pagezero_daemon_enabled — zeroing of free memory in the background is enabled
VALUES
Allowed values
Minimum:
0
Maximum:
1
DESCRIPTION
HP-UX provides improved security by zeroing out any memory that is being
assigned to user space.
This ensures that no user can read what may have been
written by some other user.
Normally, the zeroing is done when the physical page is allocated to
the user -- often when the application touches the page for the first time.
Some system calls like
mlock()
also result in the zeroing of pages.
The time taken for these kind of system calls and accesses depends
upon the size of the
memory being zeroed out.
A 4G page may easily take many seconds to be allocated.
A large database shared memory segment may take many minutes
to be allocated.
Allocation of a small page is generally unobservable.
The
pagezero
daemon
is a performance enhancement that reduces the elapsed time for completing
kernel operations like page faults,
mlock(),
and so on.
The idea is to zero out large free pages (4MB and above in size) during
times when the CPU is idle.
The daemon has been specially designed to ensure that it only executes
for brief times when the CPU is idle.
However, under certain conditions, where some resource (CPU, TLB or Memory
bandwidth) is very highly utilized, it is possible that the operation of the
daemon adversely impacts performance.
For example, if the application is limited by the memory bandwidth, then
it may be better to disable the daemon.
This situation is expected to be rare.
Most workloads will not need to disable the daemon.
This tunable allows system administrators to disable and enable the
pagezero
daemon.
Once the daemon has been disabled, it will not zero out any more pages.
Any pages already in the process of being zeroed will be zeroed out.
When the daemon is enabled, it will zero out any unzeroed free pages
of size 4MB and more.
Who is Expected to Change This Tunable?
Anyone.
Restrictions on Changing
Changes to this tunable take effect immediately.
When Should the Value of This Tunable Be Changed to 0?
This tunable should be changed only if the system is using large pages (i.e.
vps_ceiling
is set to 4MB or above).
Changing it if the system is not using pages of size
4M and above will have no effect.
It may be changed to 0 if the system is
bottle-necked on some hardware resource.
In particular, disabling the daemon
may help in decreasing TLB misses and increasing the available CPU time and
reducing memory latencies.
What Are the Side Effects of changing the value to 0?
Disabling the daemon will increase the time it takes to process page faults
and to complete system calls that result in the allocation of memory
(e.g.
mlock()).
WARNINGS
All HP-UX kernel tunable parameters are release specific.
This parameter 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 values. For information about the effects of
installation on tunable values, consult the documentation
for the kernel software being installed.
For information about optional kernel software that was
factory installed on your system, see
HP-UX Release Notes
at
http://docs.hp.com.
AUTHOR
pagezero_daemon_enabled
was developed by HP.