[netperf-talk] Netperf CPU utilization statistics

Rick Jones rick.jones2 at hp.com
Mon Apr 16 10:35:05 PDT 2012


On 04/16/2012 04:57 AM, Andrew Gallatin wrote:
> On 04/16/12 07:35, Hoppetauet wrote:
>> Hello
>>
>> Can someone confirm whether netperf reports CPU utilization on a
>> per-netserver (ie. per daemon) or for the physical machine as a whole?
>> Ie. if I have 4 netserver instances running simultaneously and 4 other
>> machines running test on each of these, will the CPU utilization
>> rpeorted from each of these tests be only for that particular netserver
>> instance?
>
> It reports it for the system as a whole, and should report the same
> utilization as things like vmstat, mpstat, etc. This was done to
> provide more accurate accounting of the time spent by the OS which is
> normally not chargeable by traditional (getrusage) means. Now things
> which run in a context other than the netserver context, like
> the NIC's interrupt handler, NAPI polling threads, etc, are counted.
> So if you run 4 netservers, and each consumes 25% of the system's CPU,
> you'll see 100% reported by all of them.

http://www.netperf.org/svn/netperf2/trunk/doc/netperf.html#CPU-Utilization 
  Describes things a bit as well.  Also, with version 2.5.0, there are 
four "omni output selectors" 
http://www.netperf.org/svn/netperf2/trunk/doc/netperf.html#Omni-Output-Selection 
which can give the ID and utilization of the most utilized CPU on either 
side:

raj at tardy:~/netperf2_trunk/src$ ./netperf -- -O ? | grep PEAK
LOCAL_CPU_PEAK_UTIL
LOCAL_CPU_PEAK_ID
REMOTE_CPU_PEAK_UTIL
REMOTE_CPU_PEAK_ID

That can be used to help tell if at least one of the CPUs was "pegged" 
during the test.

The bit about the CPU util being whole system is also discussed in the 
note at:

http://www.netperf.org/svn/netperf2/trunk/doc/netperf.html#Running-Concurrent-Netperf-Tests

happy benchmarking,

rick jones


More information about the netperf-talk mailing list