HP-UX HB v13.00 Ch-22 - Performance and Tuning

HP-UX Handbook Rev 13.00 Page 18 (of 19)
Chapter 22 Performance & Tuning
October 29, 2013
POSIX real-time schedulers:
SCHED_FIFO
SCHED_RR
SCHED_RR2
HP-UX real-time scheduler:
SCHED_RTPRIO
HP-UX timeshare scheduler:
SCHED_HPUX
SCHED_NOAGE
The default priority range of each scheduler is as follows:
highest priority
lowest priority
31
0
31
0
31
0
0
127
178
255
N/A
N/A
The most commonly used alternate scheduling policies are SCHED_NOAGE , this allows
processes to hold their priority while on CPU , avoiding priority based context switching.
Typically this is set at priority 178, which at the top of the system call range.
Under normal conditions a process will age , i.e. its priority will become less important through
it’s nice range while on CPU . As soon as it becomes less important in priority that any other
process in the queue , the system forces a context switch. If there are many similar priority
processes running in a given CPU run queue , this can cause excessive context switching and an
insufficient amount of contiguous CPU time to get much done.
SCHED_RTPRIO is also somewhat popular for large database environments. This allows the
specified processes to run under normal System Call range.
Note: Higher numerical values for the priority represent higher priorities under POSIX real-time
schedulers, whereas lower numerical values for the priority represent higher priorities under HP-
UX real-time and timeshare schedulers
In presence of processor sets , the application execution is restricted to processors in the
application's processor set. The threads in different processor sets do not compete with one
another for processors based on their scheduling policy and priority values. The scheduler looks
only at threads assigned to a processor's processor set to choose the next thread to run.