| 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. |