On Wed, Jan 20, 2016 at 11:13 AM, Jesper Dangaard Brouer
<bro...@redhat.com> wrote:
> Hi All,
>
> I wrote a small tool[1] to extract ethtool --statistics|-S, sample and
> present it in a more human readable manor.  You might also find this
> useful...
>
> https://github.com/netoptimizer/network-testing/blob/master/bin/ethtool_stats.pl
>
> The reason I wrote this script is that the mlx5 driver (Mellanox 100 Gbit/s)
> does not report correct ifconfig stats.  It reports the HW counters,
> not what the network stack is able to handle.  I/we obviously need the
> stack number when working on improving the stack.

correct && we should be fixing that ... still it's worthwhile to be
able and see per ring stats, specially when you're dealing/optimizing
in multi-stream env.

> Output examples:
>
> pktgen (1 core) sending ~20Mpps
>
> Show adapter mlx5p2 statistics (ONLY that changed!)
> Ethtool(mlx5p2) stat:     19431694 (     19,431,694) <= frames_rx /sec
> Ethtool(mlx5p2) stat:   1243722215 (  1,243,722,215) <= in_octets /sec
> Ethtool(mlx5p2) stat:     19433161 (     19,433,161) <= in_ucast_pkts /sec
> Ethtool(mlx5p2) stat:   1243746943 (  1,243,746,943) <= octets /sec
> Ethtool(mlx5p2) stat:   1243629263 (  1,243,629,263) <= octets_received /sec
> Ethtool(mlx5p2) stat:     19433654 (     19,433,654) <= p64octets /sec
> Ethtool(mlx5p2) stat:     19433556 (     19,433,556) <= pkts /sec
> Ethtool(mlx5p2) stat:      1815546 (      1,815,546) <= rx3_packets /sec
> Ethtool(mlx5p2) stat:   1165854821 (  1,165,854,821) <= rx_bytes /sec
> Ethtool(mlx5p2) stat:     19430906 (     19,430,906) <= rx_csum_good /sec
> Ethtool(mlx5p2) stat:     19430906 (     19,430,906) <= rx_packets /sec
> Ethtool(mlx5p2) stat:   1165854821 (  1,165,854,821) <= rx_unicast_bytes /sec
> Ethtool(mlx5p2) stat:     19430906 (     19,430,906) <= rx_unicast_packets 
> /sec

was expecting to see tx_XXX stats, something wrong here?


> pktgen (4 cores) sending ~50Mpps
[...]

The 20M for single ring/core and 50M pps for four streams are really
cool results. Do the scripts to get ~such results exist in your
network testing github repo? last time I looked I wasn't sure if  the
multi-stream case is supported.

Could you post the two commands you used for these results along with
minimal spec of the system (CPU type/freq, special .config directives,
anything else)?

Or.

> Show adapter mlx5p2 statistics (ONLY that changed!)
> Ethtool(mlx5p2) stat:     25710443 (     25,710,443) <= drop_events /sec
> Ethtool(mlx5p2) stat:     51861645 (     51,861,645) <= frames_rx /sec
> Ethtool(mlx5p2) stat:     25710502 (     25,710,502) <= in_discards /sec
> Ethtool(mlx5p2) stat:   3319134161 (  3,319,134,161) <= in_octets /sec
> Ethtool(mlx5p2) stat:     26150970 (     26,150,970) <= in_ucast_pkts /sec
> Ethtool(mlx5p2) stat:   3319128053 (  3,319,128,053) <= octets /sec
> Ethtool(mlx5p2) stat:   3319145319 (  3,319,145,319) <= octets_received /sec
> Ethtool(mlx5p2) stat:     51861369 (     51,861,369) <= p64octets /sec
> Ethtool(mlx5p2) stat:     51861375 (     51,861,375) <= pkts /sec
> Ethtool(mlx5p2) stat:      1383475 (      1,383,475) <= rx3_packets /sec
> Ethtool(mlx5p2) stat:   1569059171 (  1,569,059,171) <= rx_bytes /sec
> Ethtool(mlx5p2) stat:     26150988 (     26,150,988) <= rx_csum_good /sec
> Ethtool(mlx5p2) stat:     26150988 (     26,150,988) <= rx_packets /sec
> Ethtool(mlx5p2) stat:   1569059171 (  1,569,059,171) <= rx_unicast_bytes /sec
> Ethtool(mlx5p2) stat:     26150988 (     26,150,988) <= rx_unicast_packets 
> /sec

Reply via email to