31 lines
1.7 KiB
Text
31 lines
1.7 KiB
Text
A note about CPU utilization...
|
|
|
|
For HP-UX 11.0 <= system < 11.23 the configure script will select the
|
|
"pstat" CPU utilization mechanism. This mechanism is the familiar
|
|
HP-UX idle counter mechanism (for all incense and porpoises) and
|
|
requires calibration. See src/netcpu_pstat.c for all the details.
|
|
|
|
For HP-UX 11.23 >= system, the configure script will select the
|
|
"pstatnew" CPU utilization mechanism. 11.23 adds cycle counts for
|
|
user, kernel and interrupt modes to the idle cycle counter. As such,
|
|
it _should_ be possible to simply take the sum of the four and the
|
|
fractions and know how much time was spent in each mode.
|
|
HOWEVER... there is a bug in the accounting for interrupt cycles,
|
|
where interrupt cycles go missing. SOOO, since there is an accurate
|
|
way to know what the total number of cycles should have been over the
|
|
interval, and we know (ass-u-me) that the idle cycle counter is good
|
|
(since the pstat mechanism has tested that one OK), we will take the
|
|
ratio of idle to total cycles to compute CPU util.
|
|
|
|
We will still calculate fractions for user, kernel and interrupt, and
|
|
report them in debug (-d) output, but with a warning for interrupt
|
|
time. See src/netcpu_pstatnew.c for all the details.
|
|
|
|
Up through HP-UX 11.23 (aka 11iV2) if you enable burst mode, and
|
|
happen to send sub-MSS requests and/or responses you _cannot_ assume
|
|
that the packet per second rate on the wire will match the transaction
|
|
per second rate reported by netperf, even if you set TCP_NODELAY with
|
|
the test-specific -D option. The HP-UX 11.X TCP stack likely will be
|
|
generating some immediate 'standalone' ACKnowledgements which may not
|
|
be generated by other stacks. This has been reported to the HP-UX TCP
|
|
folks, and an announcement will be made when that issue is resolved.
|