Hi, I (and msaitoh@n.o) want to enable WM_EVENT_COUNTERS default to troubleshoot easily. Yes, someone worry about performance degrade. So I measure each performance with/without WM_EVENT_COUNTERS.
I measure the following benchmark on Atom C2758 system. - ipgen (https://github.com/iij/ipgen) - iperf3 client side - iperf3 server side # There are the measurement results at the end of this mail. The difference seems to be within measurement error. Someone may worry about any other effects, I will add new kernel option WM_DISABLE_EVENT_COUNTERS, please use it. Though? Here is the measurement result. + GENERIC (without WM_EVENT_COUNTERS) - ipgen ==================== rfc2544 tolerable error rate: 0.1000% rfc2544 trial duration: 30 sec rfc2544 pps resolution: 0.0010% framesize|0M 100M 200M 300M 400M 500M 600M 700M 800M 900M 1Gbps ---------+----+----+----+----+----+----+----+----+----+----+ 64 |## 39.46Mbps, 77061/1488095pps 128 |#### 70.10Mbps, 68454/ 844594pps 512 |############## 276.68Mbps, 67550/ 234962pps 1024 |############################## 599.21Mbps, 73146/ 119731pps 1280 |##################################### 738.41Mbps, 72110/ 96153pps 1408 |########################################## 822.85Mbps, 73051/ 87535pps 1518 |############################################# 888.32Mbps, 73149/ 81274pps framesize|0 |100k|200k|300k|400k|500k|600k|700k|800k|900k|1.0m|1.1m|1.2m|1.3m|1.4m|1.5m pps ---------+----+----+----+----+----+----+----+----+----+----+----+----+----+----+----+ 64 |### 77061/1488095pps, 5.18% 128 |### 68454/ 844594pps, 8.10% 512 |### 67550/ 234962pps, 28.75% 1024 |### 73146/ 119731pps, 61.09% 1280 |### 72110/ 96153pps, 75.00% 1408 |### 73051/ 87535pps, 83.45% 1518 |### 73149/ 81274pps, 90.00% ==================== - iperf3 client side ==================== # iperf3 -c 192.168.0.254 -b 1000M Connecting to host 192.168.0.254, port 5201 [ 4] local 192.168.0.20 port 65530 connected to 192.168.0.254 port 5201 [ ID] Interval Transfer Bandwidth Retr Cwnd [ 4] 0.00-1.00 sec 93.2 MBytes 781 Mbits/sec 0 525 KBytes [ 4] 1.00-2.00 sec 111 MBytes 935 Mbits/sec 0 773 KBytes [ 4] 2.00-3.00 sec 112 MBytes 938 Mbits/sec 0 960 KBytes [ 4] 3.00-4.00 sec 112 MBytes 938 Mbits/sec 0 1.09 MBytes [ 4] 4.00-5.00 sec 112 MBytes 937 Mbits/sec 0 1.22 MBytes [ 4] 5.00-6.00 sec 104 MBytes 870 Mbits/sec 0 1.34 MBytes [ 4] 6.00-7.00 sec 111 MBytes 934 Mbits/sec 0 1.45 MBytes [ 4] 7.00-8.00 sec 112 MBytes 936 Mbits/sec 0 1.55 MBytes [ 4] 8.00-9.00 sec 111 MBytes 929 Mbits/sec 0 1.56 MBytes [ 4] 9.00-10.00 sec 109 MBytes 919 Mbits/sec 0 1.56 MBytes - - - - - - - - - - - - - - - - - - - - - - - - - [ ID] Interval Transfer Bandwidth Retr [ 4] 0.00-10.00 sec 1.06 GBytes 911 Mbits/sec 0 sender [ 4] 0.00-10.00 sec 1.06 GBytes 911 Mbits/sec receiver iperf Done. ==================== - iperf3 server side ==================== # iperf3 -s ----------------------------------------------------------- Server listening on 5201 ----------------------------------------------------------- Accepted connection from 192.168.0.254, port 47242 [ 5] local 192.168.0.20 port 5201 connected to 192.168.0.254 port 47244 [ ID] Interval Transfer Bandwidth [ 5] 0.00-1.00 sec 67.0 MBytes 561 Mbits/sec [ 5] 1.00-2.00 sec 88.4 MBytes 740 Mbits/sec [ 5] 2.00-3.00 sec 98.3 MBytes 826 Mbits/sec [ 5] 3.00-4.00 sec 103 MBytes 861 Mbits/sec [ 5] 4.00-5.00 sec 103 MBytes 864 Mbits/sec [ 5] 5.00-6.00 sec 105 MBytes 881 Mbits/sec [ 5] 6.00-7.00 sec 104 MBytes 877 Mbits/sec [ 5] 7.00-8.00 sec 91.3 MBytes 767 Mbits/sec [ 5] 8.00-9.00 sec 94.0 MBytes 787 Mbits/sec [ 5] 9.00-10.00 sec 106 MBytes 889 Mbits/sec [ 5] 10.00-10.04 sec 3.83 MBytes 899 Mbits/sec - - - - - - - - - - - - - - - - - - - - - - - - - [ ID] Interval Transfer Bandwidth [ 5] 0.00-10.04 sec 0.00 Bytes 0.00 bits/sec sender [ 5] 0.00-10.04 sec 964 MBytes 806 Mbits/sec receiver ==================== + GENERIC with WM_EVENT_COUNTERS - ipgen ==================== rfc2544 tolerable error rate: 0.1000% rfc2544 trial duration: 30 sec rfc2544 pps resolution: 0.0010% framesize|0M 100M 200M 300M 400M 500M 600M 700M 800M 900M 1Gbps ---------+----+----+----+----+----+----+----+----+----+----+ 64 |## 39.57Mbps, 77279/1488095pps 128 |#### 67.56Mbps, 65979/ 844594pps 512 |################ 302.83Mbps, 73934/ 234962pps 1024 |############################## 586.94Mbps, 71648/ 119731pps 1280 |###################################### 744.40Mbps, 72695/ 96153pps 1408 |########################################## 832.76Mbps, 73931/ 87535pps 1518 |############################################# 889.38Mbps, 73236/ 81274pps framesize|0 |100k|200k|300k|400k|500k|600k|700k|800k|900k|1.0m|1.1m|1.2m|1.3m|1.4m|1.5m pps ---------+----+----+----+----+----+----+----+----+----+----+----+----+----+----+----+ 64 |### 77279/1488095pps, 5.19% 128 |### 65979/ 844594pps, 7.81% 512 |### 73934/ 234962pps, 31.47% 1024 |### 71648/ 119731pps, 59.84% 1280 |### 72695/ 96153pps, 75.60% 1408 |### 73931/ 87535pps, 84.46% 1518 |### 73236/ 81274pps, 90.11% ==================== - iperf3 client side ==================== # iperf3 -c 192.168.0.254 -b 1000M Connecting to host 192.168.0.254, port 5201 [ 4] local 192.168.0.20 port 65534 connected to 192.168.0.254 port 5201 [ ID] Interval Transfer Bandwidth Retr Cwnd [ 4] 0.00-1.00 sec 98.2 MBytes 823 Mbits/sec 0 2.17 MBytes [ 4] 1.00-2.00 sec 112 MBytes 937 Mbits/sec 0 3.94 MBytes [ 4] 2.00-3.00 sec 112 MBytes 938 Mbits/sec 0 4.99 MBytes [ 4] 3.00-4.00 sec 107 MBytes 894 Mbits/sec 0 451 KBytes [ 4] 4.00-5.00 sec 111 MBytes 928 Mbits/sec 0 723 KBytes [ 4] 5.00-6.00 sec 110 MBytes 925 Mbits/sec 0 918 KBytes [ 4] 6.00-7.00 sec 109 MBytes 911 Mbits/sec 0 1.03 MBytes [ 4] 7.00-8.00 sec 112 MBytes 936 Mbits/sec 0 1.05 MBytes [ 4] 8.00-9.00 sec 111 MBytes 932 Mbits/sec 0 1.07 MBytes [ 4] 9.00-10.00 sec 112 MBytes 936 Mbits/sec 0 1.08 MBytes - - - - - - - - - - - - - - - - - - - - - - - - - [ ID] Interval Transfer Bandwidth Retr [ 4] 0.00-10.00 sec 1.07 GBytes 916 Mbits/sec 0 sender [ 4] 0.00-10.00 sec 1.07 GBytes 916 Mbits/sec receiver iperf Done. ==================== - iperf3 server side ==================== # iperf3 -s ----------------------------------------------------------- Server listening on 5201 ----------------------------------------------------------- Accepted connection from 192.168.0.254, port 48470 [ 5] local 192.168.0.20 port 5201 connected to 192.168.0.254 port 48472 [ ID] Interval Transfer Bandwidth [ 5] 0.00-1.00 sec 65.9 MBytes 553 Mbits/sec [ 5] 1.00-2.00 sec 91.7 MBytes 769 Mbits/sec [ 5] 2.00-3.00 sec 97.6 MBytes 819 Mbits/sec [ 5] 3.00-4.00 sec 102 MBytes 854 Mbits/sec [ 5] 4.00-5.00 sec 102 MBytes 856 Mbits/sec [ 5] 5.00-6.00 sec 90.1 MBytes 755 Mbits/sec [ 5] 6.00-7.00 sec 86.3 MBytes 725 Mbits/sec [ 5] 7.00-8.00 sec 92.0 MBytes 771 Mbits/sec [ 5] 8.00-9.00 sec 105 MBytes 881 Mbits/sec [ 5] 9.00-10.00 sec 105 MBytes 878 Mbits/sec [ 5] 10.00-10.04 sec 4.00 MBytes 881 Mbits/sec - - - - - - - - - - - - - - - - - - - - - - - - - [ ID] Interval Transfer Bandwidth [ 5] 0.00-10.04 sec 0.00 Bytes 0.00 bits/sec sender [ 5] 0.00-10.04 sec 941 MBytes 787 Mbits/sec receiver ==================== Thanks, -- ////////////////////////////////////////////////////////////////////// Internet Initiative Japan Inc. Device Engineering Section, Product Development Department, Product Division, Technology Unit Kengo NAKAHARA <k-nakah...@iij.ad.jp>