ccNUMA Overview

Fill First is the default policy for programs that are gang-scheduled.
The launch policy tree only extends from the parent to its immediate
children. The children then become the root of a new launch policy tree.
Fill Tree
This request establishes a tree-based Fill First launch policy for the
specified thread. This request differs from PTHREAD_POLICY_FILL_NP
in which threads become part of the launch tree. This launch policy
includes all descendents of the target thread in the launch tree.
The LDOMs used will be selected in the order in which they were
created at boot time. So, the process or thread distribution of an
application with several levels in the launch tree may vary between
runs.
mpsched policy name: FILL_TREE
pthread_launch_policy_np() support:
PTHREAD_POLICY_FILL_TREE_NP
mpctl() system call support:
MPC_LAUNCH_POLICY_FILL_TREE
Packed
The Packed launch policy causes all of the program’s threads or
processes to be launched into the same locality.
Under the Packed policy, a locality domain can become
oversubscribed. That is, the number of threads and processes may
exceed the number of processors in the locality. Threads and processes
launched under the Packed policy do not spill over into other localities.
mpsched policy name: PACKED
pthread_launch_policy_np() support:
PTHREAD_POLICY_PACKED_NP
mpctl() system call support:
MPC_SETPROCESS_PACKED
and MPC_SETLWP_PACKED
Least Loaded
The Least Loaded policy launches newly created threads or processes
into the least loaded locality domain in the system at the time of
creation.
The least loaded locality domain is the one with the lowest load
average within the last second, based on the number of active runnable
threads and processes (excluding those in a short-term I/O wait).
mpsched policy name: LL
pthread_launch_policy_np() support:
PTHREAD_POLICY_LEASTLOAD_NP
mpctl() system call support:
MPC_SETPROCESS_LEASTLOAD
and MPC_SETLWP_LEASTLOAD
Default launch policies
By default, HP-UX launches threads and processes using a launch policy called None. The None policy implies
that HP-UX is free to launch threads and processes as it determines is best for system performance.
No locality binding is established by the None policy, so HP-UX may migrate threads and processes that use this
policy to another LDOM.
You should not rely on the None launch policy to provide any specific behavior, because it may change from
release to release or from hardware platform to hardware platform.
If you need to guarantee that a specific launch behavior is maintained when running a program on a variety of
systems, specify a thread-launch policy or process-launch policy for the program.
HP-UX 11i v2 for HP Integrity server systems uses the following methods for launching threads and processes using
the None launch policy:
Threads are first placed by the default HP-UX 11i v2 thread-launch policy (None) into the current locality. Then,
if there are more threads than processors in the current locality, threads spill over into another locality, which is
selected for highest performance. This is equivalent to a Fill First thread-launch policy with no binding.
Processes are placed by the default HP-UX 11i v2 process-launch policy (None) into the locality with the fewest
threads and processes currently in the run queue. This is equivalent to a Least Loaded process-launch policy with
no binding.
The None policy may perform differently on other hardware platforms and in future HP-UX releases. All the launch
policies are described in Table 2, “Launch policy descriptions.”
11