numam-dpdk/examples
Phil Yang 016493307a examples/packet_ordering: add stats per worker thread
The current implementation using the '__sync' built-ins to synchronize
statistics within worker threads. The '__sync' built-ins functions are
full barriers which will affect the performance, so add a per worker
packets statistics to remove the synchronisation between worker threads.

Since the maximum core number can get to 256, so disable the per core
stats print in default and add the --insight-worker option to enable it.

For example:
sudo examples/packet_ordering/arm64-armv8a-linuxapp-gcc/packet_ordering \
-l 112-115 --socket-mem=1024,1024 -n 4 -- -p 0x03 --insight-worker

RX thread stats:
 - Pkts rxd:                            226539223
 - Pkts enqd to workers ring:           226539223

Worker thread stats on core [113]:
 - Pkts deqd from workers ring:         77557888
 - Pkts enqd to tx ring:                77557888
 - Pkts enq to tx failed:               0

Worker thread stats on core [114]:
 - Pkts deqd from workers ring:         148981335
 - Pkts enqd to tx ring:                148981335
 - Pkts enq to tx failed:               0

Worker thread stats:
 - Pkts deqd from workers ring:         226539223
 - Pkts enqd to tx ring:                226539223
 - Pkts enq to tx failed:               0

TX stats:
 - Pkts deqd from tx ring:              226539223
 - Ro Pkts transmitted:                 226539168
 - Ro Pkts tx failed:                   0
 - Pkts transmitted w/o reorder:        0
 - Pkts tx failed w/o reorder:          0

Suggested-by: Honnappa Nagarahalli <honnappa.nagarahalli@arm.com>
Signed-off-by: Phil Yang <phil.yang@arm.com>
Reviewed-by: Gavin Hu <gavin.hu@arm.com>
2019-07-08 16:33:06 +02:00
..
bbdev_app examples: fix pkg-config detection with older make 2019-07-03 23:10:23 +02:00
bond examples: fix pkg-config detection with older make 2019-07-03 23:10:23 +02:00
bpf examples/bpf: move from test directory 2019-02-26 15:29:07 +01:00
cmdline examples: fix pkg-config detection with older make 2019-07-03 23:10:23 +02:00
distributor examples: fix pkg-config detection with older make 2019-07-03 23:10:23 +02:00
ethtool net: add rte prefix to ether defines 2019-05-24 13:34:45 +02:00
eventdev_pipeline examples: fix pkg-config detection with older make 2019-07-03 23:10:23 +02:00
exception_path examples: fix pkg-config detection with older make 2019-07-03 23:10:23 +02:00
fips_validation cryptodev: add feature flags to disable 2019-07-05 15:03:25 +02:00
flow_classify examples: fix pkg-config detection with older make 2019-07-03 23:10:23 +02:00
flow_filtering examples: fix pkg-config detection with older make 2019-07-03 23:10:23 +02:00
helloworld examples: fix pkg-config detection with older make 2019-07-03 23:10:23 +02:00
ip_fragmentation examples/ip_fragmentation: enable IP checksum offload 2019-07-08 11:04:01 +02:00
ip_pipeline cryptodev: add feature flags to disable 2019-07-05 15:03:25 +02:00
ip_reassembly examples/ip_reassembly: enable IP checksum offload 2019-07-08 11:04:01 +02:00
ipsec-secgw examples/ipsec-secgw: support header reconstruction 2019-07-05 15:28:14 +02:00
ipv4_multicast examples: fix pkg-config detection with older make 2019-07-03 23:10:23 +02:00
kni examples: fix pkg-config detection with older make 2019-07-03 23:10:23 +02:00
l2fwd examples: fix pkg-config detection with older make 2019-07-03 23:10:23 +02:00
l2fwd-cat examples: fix pkg-config detection with older make 2019-07-03 23:10:23 +02:00
l2fwd-crypto cryptodev: add feature flags to disable 2019-07-05 15:03:25 +02:00
l2fwd-jobstats examples: fix pkg-config detection with older make 2019-07-03 23:10:23 +02:00
l2fwd-keepalive examples: fix pkg-config detection with older make 2019-07-03 23:10:23 +02:00
l3fwd examples: fix pkg-config detection with older make 2019-07-03 23:10:23 +02:00
l3fwd-acl examples: fix pkg-config detection with older make 2019-07-03 23:10:23 +02:00
l3fwd-power examples: fix pkg-config detection with older make 2019-07-03 23:10:23 +02:00
l3fwd-vf examples: fix pkg-config detection with older make 2019-07-03 23:10:23 +02:00
link_status_interrupt examples: fix pkg-config detection with older make 2019-07-03 23:10:23 +02:00
load_balancer examples: fix pkg-config detection with older make 2019-07-03 23:10:23 +02:00
multi_process examples/multi_process: fix FreeBSD build 2019-06-05 15:13:06 +02:00
netmap_compat replace snprintf with strlcpy without adding extra include 2019-04-04 22:45:54 +02:00
ntb examples/ntb: add example for NTB 2019-07-05 12:50:19 +02:00
packet_ordering examples/packet_ordering: add stats per worker thread 2019-07-08 16:33:06 +02:00
performance-thread net: replace IPv4/v6 constants with uppercase name 2019-06-03 16:54:54 +02:00
ptpclient examples: fix pkg-config detection with older make 2019-07-03 23:10:23 +02:00
qos_meter examples: fix pkg-config detection with older make 2019-07-03 23:10:23 +02:00
qos_sched examples: fix pkg-config detection with older make 2019-07-03 23:10:23 +02:00
quota_watermark net: add rte prefix to ether functions 2019-05-24 13:34:45 +02:00
rxtx_callbacks examples: fix pkg-config detection with older make 2019-07-03 23:10:23 +02:00
server_node_efd fix off-by-one errors in snprintf 2019-05-29 13:02:53 +02:00
service_cores examples: fix pkg-config detection with older make 2019-07-03 23:10:23 +02:00
skeleton examples: fix pkg-config detection with older make 2019-07-03 23:10:23 +02:00
tep_termination examples: fix pkg-config detection with older make 2019-07-03 23:10:23 +02:00
timer examples: fix pkg-config detection with older make 2019-07-03 23:10:23 +02:00
vdpa examples: fix pkg-config detection with older make 2019-07-03 23:10:23 +02:00
vhost examples: fix pkg-config detection with older make 2019-07-03 23:10:23 +02:00
vhost_crypto cryptodev: add feature flags to disable 2019-07-05 15:03:25 +02:00
vhost_scsi examples: fix pkg-config detection with older make 2019-07-03 23:10:23 +02:00
vm_power_manager examples/power: remove double copy of FIFO path 2019-07-04 22:42:45 +02:00
vmdq examples: fix pkg-config detection with older make 2019-07-03 23:10:23 +02:00
vmdq_dcb examples: fix pkg-config detection with older make 2019-07-03 23:10:23 +02:00
Makefile examples/ntb: add example for NTB 2019-07-05 12:50:19 +02:00
meson.build examples/ntb: add example for NTB 2019-07-05 12:50:19 +02:00