User's Manual

Table Of Contents
Figure 7 PRM’s process scheduling on MP systems (Hyper-Threading disabled)
If a process is locked down on a particular core, PRM does not reassign it, but does take it into
account when distributing other processes across the cores. PRM manages the CPU resource only
for the cores on a single system; it cannot distribute processes across cores on different systems.
As implied above, PRM provides a PRM group its entitlement on a symmetric-multiprocessing (SMP)
system with Hyper-Threading disabled by granting the group its entitlement on each core. If the
group does not have at least one process for each core, PRM compensates by proportionally
increasing the PRM group’s entitlements on cores where it does have processes. For example, a
PRM group with a 10% entitlement on a 4-core system, gets 10% of each core. If the group is
running on only one core because it has only one process, the 10% entitlements from the three
unused cores are given to the group on the core where it has the process running. Thus, it gets
40% on that one core.
NOTE: A PRM group on a system with Hyper-Threading disabled may not be able to get its
entitlement because it has too few processes. For example, if the PRM group above—with only
one single-threaded process—were to have a 50% entitlement for the 4-core system, it would never
get its entitlement. PRM would give the group an entitlement of 100% on two cores. However,
because the group has only the one thread, it can use only one core—resulting in a 25% entitlement.
How PRM manages real memory resources
Memory management refers to the rules that govern real and virtual memory and allow for sharing
system resources by user and system processes.
In order to understand how PRM manages real memory (both private and shared), it is useful to
understand how PRM interacts with standard HP-UX memory management.
How HP-UX manages memory
The data and instructions of any process (a program in execution) must be available to the core
by residing in real memory at the time of execution. Real memory is shared by all processes and
the kernel.
To execute a process, the kernel executes through a per-process virtual address space that has
been mapped into real memory. Memory management allows the total size of user processes to
exceed real memory by using an approach termed demand-paged virtual memory. Virtual memory
enables you to execute a process by bringing into real memory parts of the process only as needed
and pushing out parts of a process that have not been recently used.
26 Understanding how PRM manages resources