Instant Capacity on Demand (iCOD) User's Guide for versions B.05.x
Special Considerations
iCOD and pstat, pstat_getdynamic, and mpctl System Calls
Appendix B128
iCOD and pstat, pstat_getdynamic, and mpctl
System Calls
Applications that are dependent on the number of active processors most
likely depend on the system calls pstat and mpctl.
pstat
pstat_getdynamic now returns the number of active processors in
pst_dynamic.psd_proc_cnt. In the original release of HP-UX 11.00, it
was always the same as pst_dynamic.psd_max_proc_cnt. That field
now includes deactivated processors.
In the past, a call to pstat_getdynamic returned fields psd_proc_cnt
(number of active processors) and psd_max_proc_cnt (maximum
number of active processors), and they usually had the same value. This
is because all processors in the system were usually active.
Consequently, these fields could be used interchangeably even though
they had different meanings. With iCOD systems, these fields are no
longer interchangeable.
Four other fields are adjusted in pst_dynamic structure. They are
psd_avg_1_min, psd_avg_5_min, psd_avg_15_min, and
psd_cpu_time[].
psd_avg_1_min is calculated by summing up the corresponding entries
in psd_mp_avg_1_min[] and dividing by psd_max_proc_cnt. In effect,
psd_avg_1_min reflects the average values of psd_mp_avg_1_min[]. The
change is made to exclude the values of the deactivated processors when
summing up entries in psd_mp_avg_1_min[]. The sum is then divided
by psd_proc_cnt. Thus, values of deactivated processors are not taken
into account for each load average value. psd_avg_5_min and
psd_avg_15_min is adjusted in a similar way.
Similarly, psd_cpu_time[i] reflects the average values in
psd_mp_cpu_time[][i]. Again, the adjustment is to exclude the values
of deactivated processors in psd_mp_cpu_time[][i] and the sum is then
divided by psd_proc_cnt. Thus, values of deactivated processors are not
taken into account for each load average value.