* FEC performance degradation on iMX28 with forced link media @ 2013-11-22 12:40 Hector Palacios 2013-11-24 4:40 ` Marek Vasut 0 siblings, 1 reply; 13+ messages in thread From: Hector Palacios @ 2013-11-22 12:40 UTC (permalink / raw) To: netdev; +Cc: fabio.estevam, Marek Vasut Hello, When forcing the Ethernet PHY link media with ethtool/mii-tool on the i.MX28 I've seen important performance degradation as the packet size increases. On the target: # mii-tool eth0 -F 10baseT-FD # netpipe On the host: # netpipe -h <target-ip> -n 1 ... 44: 1024 bytes 1 times --> 6.56 Mbps in 1191.00 usec 45: 1027 bytes 1 times --> 6.56 Mbps in 1193.52 usec 46: 1533 bytes 1 times --> 0.60 Mbps in 19600.54 usec 47: 1536 bytes 1 times --> 0.46 Mbps in 25262.52 usec 48: 1539 bytes 1 times --> 0.57 Mbps in 20745.54 usec 49: 2045 bytes 1 times --> 0.74 Mbps in 20971.95 usec ... On loop 46, as the packet size exceeds the MTU (1500) performance falls from 6.56Mbps to 0.60Mbps. Going back to 100baseTX-FD, but still forced (autonegotiation off), the same occurs: On the target: # mii-tool eth0 -F 100baseTx-FD # netpipe On the host: # netpipe -h <target-ip> -n 1 ... 58: 6141 bytes 1 times --> 39.74 Mbps in 1179.03 usec 59: 6144 bytes 1 times --> 41.83 Mbps in 1120.51 usec 60: 6147 bytes 1 times --> 41.39 Mbps in 1133.03 usec 61: 8189 bytes 1 times --> 6.36 Mbps in 9823.94 usec 62: 8192 bytes 1 times --> 6.56 Mbps in 9521.46 usec 63: 8195 bytes 1 times --> 6.56 Mbps in 9532.99 usec ... only this time it happens with a larger packet size (8189 bytes). With autonegotiation on, performance is ok and does not suffer these drops. I've reproduced this on the mx28evk board but it also happens in my hardware, with different PHY on v3.10. I also tried on an old v2.6.35 kernel and the issue was reproducible as well, though it happened with larger packet sizes than it happens with v3.10: ... 75: 32771 bytes 1 times --> 49.64 Mbps in 5036.50 usec 76: 49149 bytes 1 times --> 46.18 Mbps in 8120.48 usec 77: 49152 bytes 1 times --> 43.30 Mbps in 8660.46 usec 78: 49155 bytes 1 times --> 40.10 Mbps in 9351.46 usec 79: 65533 bytes 1 times --> 2.03 Mbps in 246061.04 usec 80: 65536 bytes 1 times --> 2.21 Mbps in 226516.50 usec 81: 65539 bytes 1 times --> 1.45 Mbps in 344196.46 usec ... Could there be any issue with packet fragmentation? I tried the same on imx6sabresd but here the issue is not reproducible. I don't know if the higher CPU frequency might be hiding the problem, though. Any idea about what can make the difference between forcing media vs autonegotiation? Best regards, -- Hector Palacios ^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: FEC performance degradation on iMX28 with forced link media 2013-11-22 12:40 FEC performance degradation on iMX28 with forced link media Hector Palacios @ 2013-11-24 4:40 ` Marek Vasut 2013-11-25 8:56 ` Hector Palacios 0 siblings, 1 reply; 13+ messages in thread From: Marek Vasut @ 2013-11-24 4:40 UTC (permalink / raw) To: Hector Palacios; +Cc: netdev, fabio.estevam Hi Hector, > Hello, > > When forcing the Ethernet PHY link media with ethtool/mii-tool on the > i.MX28 I've seen important performance degradation as the packet size > increases. > > On the target: > # mii-tool eth0 -F 10baseT-FD > # netpipe > > On the host: > # netpipe -h <target-ip> -n 1 > ... > 44: 1024 bytes 1 times --> 6.56 Mbps in 1191.00 usec > 45: 1027 bytes 1 times --> 6.56 Mbps in 1193.52 usec > 46: 1533 bytes 1 times --> 0.60 Mbps in 19600.54 usec > 47: 1536 bytes 1 times --> 0.46 Mbps in 25262.52 usec > 48: 1539 bytes 1 times --> 0.57 Mbps in 20745.54 usec > 49: 2045 bytes 1 times --> 0.74 Mbps in 20971.95 usec > ... > On loop 46, as the packet size exceeds the MTU (1500) performance falls > from 6.56Mbps to 0.60Mbps. > > Going back to 100baseTX-FD, but still forced (autonegotiation off), the > same occurs: On the target: > # mii-tool eth0 -F 100baseTx-FD > # netpipe > > On the host: > # netpipe -h <target-ip> -n 1 > ... > 58: 6141 bytes 1 times --> 39.74 Mbps in 1179.03 usec > 59: 6144 bytes 1 times --> 41.83 Mbps in 1120.51 usec > 60: 6147 bytes 1 times --> 41.39 Mbps in 1133.03 usec > 61: 8189 bytes 1 times --> 6.36 Mbps in 9823.94 usec > 62: 8192 bytes 1 times --> 6.56 Mbps in 9521.46 usec > 63: 8195 bytes 1 times --> 6.56 Mbps in 9532.99 usec > ... > only this time it happens with a larger packet size (8189 bytes). > > With autonegotiation on, performance is ok and does not suffer these drops. > > I've reproduced this on the mx28evk board but it also happens in my > hardware, with different PHY on v3.10. > I also tried on an old v2.6.35 kernel and the issue was reproducible as > well, though it happened with larger packet sizes than it happens with > v3.10: > ... > 75: 32771 bytes 1 times --> 49.64 Mbps in 5036.50 usec > 76: 49149 bytes 1 times --> 46.18 Mbps in 8120.48 usec > 77: 49152 bytes 1 times --> 43.30 Mbps in 8660.46 usec > 78: 49155 bytes 1 times --> 40.10 Mbps in 9351.46 usec > 79: 65533 bytes 1 times --> 2.03 Mbps in 246061.04 usec > 80: 65536 bytes 1 times --> 2.21 Mbps in 226516.50 usec > 81: 65539 bytes 1 times --> 1.45 Mbps in 344196.46 usec > ... > > Could there be any issue with packet fragmentation? > I tried the same on imx6sabresd but here the issue is not reproducible. I > don't know if the higher CPU frequency might be hiding the problem, > though. > > Any idea about what can make the difference between forcing media vs > autonegotiation? Let me ask, this might be unrelated, but I will still go ahead. Do you also observe packetloss? You can check with iperf: On host machine (PC): iperf -u -s -l 4M -i 60 On target: iperf -u -c <hostip> -t 3600 -B 100M -i 60 Best regards, Marek Vasut ^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: FEC performance degradation on iMX28 with forced link media 2013-11-24 4:40 ` Marek Vasut @ 2013-11-25 8:56 ` Hector Palacios 2013-12-18 16:43 ` FEC performance degradation with certain packet sizes Hector Palacios 0 siblings, 1 reply; 13+ messages in thread From: Hector Palacios @ 2013-11-25 8:56 UTC (permalink / raw) To: Marek Vasut; +Cc: netdev, fabio.estevam On 11/24/2013 05:40 AM, Marek Vasut wrote: > Hi Hector, > >> Hello, >> >> When forcing the Ethernet PHY link media with ethtool/mii-tool on the >> i.MX28 I've seen important performance degradation as the packet size >> increases. >> >> On the target: >> # mii-tool eth0 -F 10baseT-FD >> # netpipe >> >> On the host: >> # netpipe -h <target-ip> -n 1 >> ... >> 44: 1024 bytes 1 times --> 6.56 Mbps in 1191.00 usec >> 45: 1027 bytes 1 times --> 6.56 Mbps in 1193.52 usec >> 46: 1533 bytes 1 times --> 0.60 Mbps in 19600.54 usec >> 47: 1536 bytes 1 times --> 0.46 Mbps in 25262.52 usec >> 48: 1539 bytes 1 times --> 0.57 Mbps in 20745.54 usec >> 49: 2045 bytes 1 times --> 0.74 Mbps in 20971.95 usec >> ... >> On loop 46, as the packet size exceeds the MTU (1500) performance falls >> from 6.56Mbps to 0.60Mbps. >> >> Going back to 100baseTX-FD, but still forced (autonegotiation off), the >> same occurs: On the target: >> # mii-tool eth0 -F 100baseTx-FD >> # netpipe >> >> On the host: >> # netpipe -h <target-ip> -n 1 >> ... >> 58: 6141 bytes 1 times --> 39.74 Mbps in 1179.03 usec >> 59: 6144 bytes 1 times --> 41.83 Mbps in 1120.51 usec >> 60: 6147 bytes 1 times --> 41.39 Mbps in 1133.03 usec >> 61: 8189 bytes 1 times --> 6.36 Mbps in 9823.94 usec >> 62: 8192 bytes 1 times --> 6.56 Mbps in 9521.46 usec >> 63: 8195 bytes 1 times --> 6.56 Mbps in 9532.99 usec >> ... >> only this time it happens with a larger packet size (8189 bytes). >> >> With autonegotiation on, performance is ok and does not suffer these drops. >> >> I've reproduced this on the mx28evk board but it also happens in my >> hardware, with different PHY on v3.10. >> I also tried on an old v2.6.35 kernel and the issue was reproducible as >> well, though it happened with larger packet sizes than it happens with >> v3.10: >> ... >> 75: 32771 bytes 1 times --> 49.64 Mbps in 5036.50 usec >> 76: 49149 bytes 1 times --> 46.18 Mbps in 8120.48 usec >> 77: 49152 bytes 1 times --> 43.30 Mbps in 8660.46 usec >> 78: 49155 bytes 1 times --> 40.10 Mbps in 9351.46 usec >> 79: 65533 bytes 1 times --> 2.03 Mbps in 246061.04 usec >> 80: 65536 bytes 1 times --> 2.21 Mbps in 226516.50 usec >> 81: 65539 bytes 1 times --> 1.45 Mbps in 344196.46 usec >> ... >> >> Could there be any issue with packet fragmentation? >> I tried the same on imx6sabresd but here the issue is not reproducible. I >> don't know if the higher CPU frequency might be hiding the problem, >> though. >> >> Any idea about what can make the difference between forcing media vs >> autonegotiation? > > Let me ask, this might be unrelated, but I will still go ahead. Do you also > observe packetloss? You can check with iperf: > > On host machine (PC): iperf -u -s -l 4M -i 60 > On target: iperf -u -c <hostip> -t 3600 -B 100M -i 60 Yes, with forced 100baseTX-FD there is a small packet loss: [ ID] Interval Transfer Bandwidth Jitter Lost/Total Datagrams [ 3] 0.0-60.0 sec 339 MBytes 47.4 Mbits/sec 0.075 ms 61/242070 (0.025%) [ 3] 60.0-120.0 sec 339 MBytes 47.4 Mbits/sec 0.209 ms 45/242122 (0.019%) [ 3] 120.0-180.0 sec 339 MBytes 47.5 Mbits/sec 0.084 ms 70/242237 (0.029%) [ 3] 180.0-240.0 sec 339 MBytes 47.4 Mbits/sec 0.030 ms 80/241993 (0.033%) [ 3] 240.0-300.0 sec 340 MBytes 47.5 Mbits/sec 0.042 ms 111/242363 (0.046%) [ 3] 300.0-360.0 sec 339 MBytes 47.4 Mbits/sec 0.038 ms 93/241972 (0.038%) [ 3] 360.0-420.0 sec 339 MBytes 47.5 Mbits/sec 0.030 ms 78/242214 (0.032%) [ 3] 420.0-480.0 sec 339 MBytes 47.4 Mbits/sec 0.090 ms 77/241980 (0.032%) [ 3] 480.0-540.0 sec 339 MBytes 47.4 Mbits/sec 0.025 ms 125/242058 (0.052%) With autonegotiated 100baseTX-FD, there is not: [ ID] Interval Transfer Bandwidth Jitter Lost/Total Datagrams [ 3] 0.0-60.0 sec 336 MBytes 47.0 Mbits/sec 0.038 ms 0/239673 (0%) [ 3] 60.0-120.0 sec 337 MBytes 47.1 Mbits/sec 0.078 ms 0/240353 (0%) [ 3] 120.0-180.0 sec 337 MBytes 47.1 Mbits/sec 0.047 ms 0/240054 (0%) [ 3] 180.0-240.0 sec 337 MBytes 47.1 Mbits/sec 0.038 ms 0/240195 (0%) [ 3] 240.0-300.0 sec 337 MBytes 47.1 Mbits/sec 0.038 ms 0/240109 (0%) [ 3] 300.0-360.0 sec 337 MBytes 47.1 Mbits/sec 0.035 ms 0/240101 (0%) [ 3] 360.0-420.0 sec 337 MBytes 47.0 Mbits/sec 0.031 ms 0/240032 (0%) [ 3] 420.0-480.0 sec 336 MBytes 47.0 Mbits/sec 0.036 ms 0/239912 (0%) Best regards, -- Hector Palacios ^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: FEC performance degradation with certain packet sizes 2013-11-25 8:56 ` Hector Palacios @ 2013-12-18 16:43 ` Hector Palacios 2013-12-18 17:38 ` Eric Dumazet 2013-12-20 3:35 ` fugang.duan 0 siblings, 2 replies; 13+ messages in thread From: Hector Palacios @ 2013-12-18 16:43 UTC (permalink / raw) To: Marek Vasut, netdev Cc: fabio.estevam, shawn.guo, l.stach, Frank Li, fugang.duan, bhutchings, davem Hello, I'm resending this thread (reworded the subject) with additional people on CC. I found the issue happens also with auto-negotiated link and is reproducible on the i.MX6 as well as on the i.MX28. It looks like a problem with the fec driver. Steps to reproduce: On the target: netpipe On the host: netpipe -h <target_ip> -n 5 At certain packet sizes (starting always at 1533 bytes), the performance drops dramatically: On i.MX28: [...] 42: 771 bytes 5 times --> 19.78 Mbps in 297.41 usec 43: 1021 bytes 5 times --> 23.29 Mbps in 334.41 usec 44: 1024 bytes 5 times --> 23.61 Mbps in 330.90 usec 45: 1027 bytes 5 times --> 23.43 Mbps in 334.41 usec 46: 1533 bytes 5 times --> 0.13 Mbps in 88817.49 usec 47: 1536 bytes 5 times --> 0.06 Mbps in 189914.91 usec 48: 1539 bytes 5 times --> 0.06 Mbps in 204917.19 usec 49: 2045 bytes 5 times --> 0.07 Mbps in 210931.79 usec 50: 2048 bytes 5 times --> 0.07 Mbps in 210919.10 usec 51: 2051 bytes 5 times --> 0.07 Mbps in 212915.71 usec 52: 3069 bytes 5 times --> 35.42 Mbps in 661.01 usec 53: 3072 bytes 5 times --> 35.57 Mbps in 659.00 usec 54: 3075 bytes 5 times --> 35.42 Mbps in 662.29 usec 55: 4093 bytes 5 times --> 40.03 Mbps in 780.19 usec 56: 4096 bytes 5 times --> 40.75 Mbps in 766.79 usec 57: 4099 bytes 5 times --> 40.64 Mbps in 769.49 usec 58: 6141 bytes 5 times --> 3.08 Mbps in 15187.90 usec 59: 6144 bytes 5 times --> 2.94 Mbps in 15928.19 usec 60: 6147 bytes 5 times --> 5.57 Mbps in 8418.91 usec 61: 8189 bytes 5 times --> 1.34 Mbps in 46574.90 usec 62: 8192 bytes 5 times --> 2.17 Mbps in 28781.99 usec 63: 8195 bytes 5 times --> 1.36 Mbps in 45923.69 usec 64: 12285 bytes 5 times --> 51.78 Mbps in 1810.21 usec 65: 12288 bytes 5 times --> 50.46 Mbps in 1857.81 usec 66: 12291 bytes 5 times --> 54.01 Mbps in 1736.21 usec 67: 16381 bytes 5 times --> 55.86 Mbps in 2237.50 usec 68: 16384 bytes 5 times --> 56.93 Mbps in 2195.79 usec 69: 16387 bytes 5 times --> 35.62 Mbps in 3509.60 usec 70: 24573 bytes 5 times --> 7.19 Mbps in 26075.60 usec 71: 24576 bytes 5 times --> 58.36 Mbps in 3212.59 usec 72: 24579 bytes 5 times --> 7.92 Mbps in 23678.90 usec 73: 32765 bytes 5 times --> 58.14 Mbps in 4299.79 usec 74: 32768 bytes 5 times --> 5.34 Mbps in 46810.20 usec 75: 32771 bytes 5 times --> 41.51 Mbps in 6023.21 usec 76: 49149 bytes 5 times --> 49.62 Mbps in 7557.20 usec 77: 49152 bytes 5 times --> 48.82 Mbps in 7681.11 usec On i.MX6: [...] 42: 771 bytes 5 times --> 16.21 Mbps in 362.91 usec 43: 1021 bytes 5 times --> 17.97 Mbps in 433.51 usec 44: 1024 bytes 5 times --> 18.19 Mbps in 429.40 usec 45: 1027 bytes 5 times --> 18.16 Mbps in 431.41 usec 46: 1533 bytes 5 times --> 2.35 Mbps in 4970.11 usec 47: 1536 bytes 5 times --> 2.36 Mbps in 4959.91 usec 48: 1539 bytes 5 times --> 2.37 Mbps in 4959.20 usec 49: 2045 bytes 5 times --> 3.14 Mbps in 4972.31 usec 50: 2048 bytes 5 times --> 3.15 Mbps in 4959.50 usec 51: 2051 bytes 5 times --> 3.15 Mbps in 4960.01 usec 52: 3069 bytes 5 times --> 4.70 Mbps in 4984.19 usec 53: 3072 bytes 5 times --> 4.73 Mbps in 4960.10 usec 54: 3075 bytes 5 times --> 4.73 Mbps in 4957.81 usec 55: 4093 bytes 5 times --> 6.29 Mbps in 4966.71 usec 56: 4096 bytes 5 times --> 6.30 Mbps in 4962.00 usec 57: 4099 bytes 5 times --> 6.31 Mbps in 4957.71 usec 58: 6141 bytes 5 times --> 49.25 Mbps in 951.40 usec 59: 6144 bytes 5 times --> 49.23 Mbps in 952.21 usec 60: 6147 bytes 5 times --> 49.18 Mbps in 953.69 usec Does anyone have any clue about where the problem might be? Best regards, -- Hector Palacios On 11/25/2013 09:56 AM, Hector Palacios wrote: > On 11/24/2013 05:40 AM, Marek Vasut wrote: >> Hi Hector, >> >>> Hello, >>> >>> When forcing the Ethernet PHY link media with ethtool/mii-tool on the >>> i.MX28 I've seen important performance degradation as the packet size >>> increases. >>> >>> On the target: >>> # mii-tool eth0 -F 10baseT-FD >>> # netpipe >>> >>> On the host: >>> # netpipe -h <target-ip> -n 1 >>> ... >>> 44: 1024 bytes 1 times --> 6.56 Mbps in 1191.00 usec >>> 45: 1027 bytes 1 times --> 6.56 Mbps in 1193.52 usec >>> 46: 1533 bytes 1 times --> 0.60 Mbps in 19600.54 usec >>> 47: 1536 bytes 1 times --> 0.46 Mbps in 25262.52 usec >>> 48: 1539 bytes 1 times --> 0.57 Mbps in 20745.54 usec >>> 49: 2045 bytes 1 times --> 0.74 Mbps in 20971.95 usec >>> ... >>> On loop 46, as the packet size exceeds the MTU (1500) performance falls >>> from 6.56Mbps to 0.60Mbps. >>> >>> Going back to 100baseTX-FD, but still forced (autonegotiation off), the >>> same occurs: On the target: >>> # mii-tool eth0 -F 100baseTx-FD >>> # netpipe >>> >>> On the host: >>> # netpipe -h <target-ip> -n 1 >>> ... >>> 58: 6141 bytes 1 times --> 39.74 Mbps in 1179.03 usec >>> 59: 6144 bytes 1 times --> 41.83 Mbps in 1120.51 usec >>> 60: 6147 bytes 1 times --> 41.39 Mbps in 1133.03 usec >>> 61: 8189 bytes 1 times --> 6.36 Mbps in 9823.94 usec >>> 62: 8192 bytes 1 times --> 6.56 Mbps in 9521.46 usec >>> 63: 8195 bytes 1 times --> 6.56 Mbps in 9532.99 usec >>> ... >>> only this time it happens with a larger packet size (8189 bytes). >>> >>> With autonegotiation on, performance is ok and does not suffer these drops. >>> >>> I've reproduced this on the mx28evk board but it also happens in my >>> hardware, with different PHY on v3.10. >>> I also tried on an old v2.6.35 kernel and the issue was reproducible as >>> well, though it happened with larger packet sizes than it happens with >>> v3.10: >>> ... >>> 75: 32771 bytes 1 times --> 49.64 Mbps in 5036.50 usec >>> 76: 49149 bytes 1 times --> 46.18 Mbps in 8120.48 usec >>> 77: 49152 bytes 1 times --> 43.30 Mbps in 8660.46 usec >>> 78: 49155 bytes 1 times --> 40.10 Mbps in 9351.46 usec >>> 79: 65533 bytes 1 times --> 2.03 Mbps in 246061.04 usec >>> 80: 65536 bytes 1 times --> 2.21 Mbps in 226516.50 usec >>> 81: 65539 bytes 1 times --> 1.45 Mbps in 344196.46 usec >>> ... >>> >>> Could there be any issue with packet fragmentation? >>> I tried the same on imx6sabresd but here the issue is not reproducible. I >>> don't know if the higher CPU frequency might be hiding the problem, >>> though. >>> >>> Any idea about what can make the difference between forcing media vs >>> autonegotiation? >> >> Let me ask, this might be unrelated, but I will still go ahead. Do you also >> observe packetloss? You can check with iperf: >> >> On host machine (PC): iperf -u -s -l 4M -i 60 >> On target: iperf -u -c <hostip> -t 3600 -B 100M -i 60 > > Yes, with forced 100baseTX-FD there is a small packet loss: > > [ ID] Interval Transfer Bandwidth Jitter Lost/Total Datagrams > [ 3] 0.0-60.0 sec 339 MBytes 47.4 Mbits/sec 0.075 ms 61/242070 (0.025%) > [ 3] 60.0-120.0 sec 339 MBytes 47.4 Mbits/sec 0.209 ms 45/242122 (0.019%) > [ 3] 120.0-180.0 sec 339 MBytes 47.5 Mbits/sec 0.084 ms 70/242237 (0.029%) > [ 3] 180.0-240.0 sec 339 MBytes 47.4 Mbits/sec 0.030 ms 80/241993 (0.033%) > [ 3] 240.0-300.0 sec 340 MBytes 47.5 Mbits/sec 0.042 ms 111/242363 (0.046%) > [ 3] 300.0-360.0 sec 339 MBytes 47.4 Mbits/sec 0.038 ms 93/241972 (0.038%) > [ 3] 360.0-420.0 sec 339 MBytes 47.5 Mbits/sec 0.030 ms 78/242214 (0.032%) > [ 3] 420.0-480.0 sec 339 MBytes 47.4 Mbits/sec 0.090 ms 77/241980 (0.032%) > [ 3] 480.0-540.0 sec 339 MBytes 47.4 Mbits/sec 0.025 ms 125/242058 (0.052%) > > With autonegotiated 100baseTX-FD, there is not: > > [ ID] Interval Transfer Bandwidth Jitter Lost/Total Datagrams > [ 3] 0.0-60.0 sec 336 MBytes 47.0 Mbits/sec 0.038 ms 0/239673 (0%) > [ 3] 60.0-120.0 sec 337 MBytes 47.1 Mbits/sec 0.078 ms 0/240353 (0%) > [ 3] 120.0-180.0 sec 337 MBytes 47.1 Mbits/sec 0.047 ms 0/240054 (0%) > [ 3] 180.0-240.0 sec 337 MBytes 47.1 Mbits/sec 0.038 ms 0/240195 (0%) > [ 3] 240.0-300.0 sec 337 MBytes 47.1 Mbits/sec 0.038 ms 0/240109 (0%) > [ 3] 300.0-360.0 sec 337 MBytes 47.1 Mbits/sec 0.035 ms 0/240101 (0%) > [ 3] 360.0-420.0 sec 337 MBytes 47.0 Mbits/sec 0.031 ms 0/240032 (0%) > [ 3] 420.0-480.0 sec 336 MBytes 47.0 Mbits/sec 0.036 ms 0/239912 (0%) > > > Best regards, > -- > Hector Palacios ^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: FEC performance degradation with certain packet sizes 2013-12-18 16:43 ` FEC performance degradation with certain packet sizes Hector Palacios @ 2013-12-18 17:38 ` Eric Dumazet 2013-12-19 2:44 ` fugang.duan 2013-12-20 3:35 ` fugang.duan 1 sibling, 1 reply; 13+ messages in thread From: Eric Dumazet @ 2013-12-18 17:38 UTC (permalink / raw) To: Hector Palacios Cc: Marek Vasut, netdev, fabio.estevam, shawn.guo, l.stach, Frank Li, fugang.duan, bhutchings, davem On Wed, 2013-12-18 at 17:43 +0100, Hector Palacios wrote: > Hello, > > I'm resending this thread (reworded the subject) with additional people on CC. > I found the issue happens also with auto-negotiated link and is reproducible on the > i.MX6 as well as on the i.MX28. It looks like a problem with the fec driver. > > Steps to reproduce: > On the target: > netpipe > On the host: > netpipe -h <target_ip> -n 5 > > At certain packet sizes (starting always at 1533 bytes), the performance drops > dramatically: > > On i.MX28: > [...] > 42: 771 bytes 5 times --> 19.78 Mbps in 297.41 usec > 43: 1021 bytes 5 times --> 23.29 Mbps in 334.41 usec > 44: 1024 bytes 5 times --> 23.61 Mbps in 330.90 usec > 45: 1027 bytes 5 times --> 23.43 Mbps in 334.41 usec > 46: 1533 bytes 5 times --> 0.13 Mbps in 88817.49 usec > 47: 1536 bytes 5 times --> 0.06 Mbps in 189914.91 usec > 48: 1539 bytes 5 times --> 0.06 Mbps in 204917.19 usec > 49: 2045 bytes 5 times --> 0.07 Mbps in 210931.79 usec > 50: 2048 bytes 5 times --> 0.07 Mbps in 210919.10 usec > 51: 2051 bytes 5 times --> 0.07 Mbps in 212915.71 usec > 52: 3069 bytes 5 times --> 35.42 Mbps in 661.01 usec > 53: 3072 bytes 5 times --> 35.57 Mbps in 659.00 usec > 54: 3075 bytes 5 times --> 35.42 Mbps in 662.29 usec > 55: 4093 bytes 5 times --> 40.03 Mbps in 780.19 usec > 56: 4096 bytes 5 times --> 40.75 Mbps in 766.79 usec > 57: 4099 bytes 5 times --> 40.64 Mbps in 769.49 usec > 58: 6141 bytes 5 times --> 3.08 Mbps in 15187.90 usec > 59: 6144 bytes 5 times --> 2.94 Mbps in 15928.19 usec > 60: 6147 bytes 5 times --> 5.57 Mbps in 8418.91 usec > 61: 8189 bytes 5 times --> 1.34 Mbps in 46574.90 usec > 62: 8192 bytes 5 times --> 2.17 Mbps in 28781.99 usec > 63: 8195 bytes 5 times --> 1.36 Mbps in 45923.69 usec > 64: 12285 bytes 5 times --> 51.78 Mbps in 1810.21 usec > 65: 12288 bytes 5 times --> 50.46 Mbps in 1857.81 usec > 66: 12291 bytes 5 times --> 54.01 Mbps in 1736.21 usec > 67: 16381 bytes 5 times --> 55.86 Mbps in 2237.50 usec > 68: 16384 bytes 5 times --> 56.93 Mbps in 2195.79 usec > 69: 16387 bytes 5 times --> 35.62 Mbps in 3509.60 usec > 70: 24573 bytes 5 times --> 7.19 Mbps in 26075.60 usec > 71: 24576 bytes 5 times --> 58.36 Mbps in 3212.59 usec > 72: 24579 bytes 5 times --> 7.92 Mbps in 23678.90 usec > 73: 32765 bytes 5 times --> 58.14 Mbps in 4299.79 usec > 74: 32768 bytes 5 times --> 5.34 Mbps in 46810.20 usec > 75: 32771 bytes 5 times --> 41.51 Mbps in 6023.21 usec > 76: 49149 bytes 5 times --> 49.62 Mbps in 7557.20 usec > 77: 49152 bytes 5 times --> 48.82 Mbps in 7681.11 usec > > On i.MX6: > [...] > 42: 771 bytes 5 times --> 16.21 Mbps in 362.91 usec > 43: 1021 bytes 5 times --> 17.97 Mbps in 433.51 usec > 44: 1024 bytes 5 times --> 18.19 Mbps in 429.40 usec > 45: 1027 bytes 5 times --> 18.16 Mbps in 431.41 usec > 46: 1533 bytes 5 times --> 2.35 Mbps in 4970.11 usec > 47: 1536 bytes 5 times --> 2.36 Mbps in 4959.91 usec > 48: 1539 bytes 5 times --> 2.37 Mbps in 4959.20 usec > 49: 2045 bytes 5 times --> 3.14 Mbps in 4972.31 usec > 50: 2048 bytes 5 times --> 3.15 Mbps in 4959.50 usec > 51: 2051 bytes 5 times --> 3.15 Mbps in 4960.01 usec > 52: 3069 bytes 5 times --> 4.70 Mbps in 4984.19 usec > 53: 3072 bytes 5 times --> 4.73 Mbps in 4960.10 usec > 54: 3075 bytes 5 times --> 4.73 Mbps in 4957.81 usec > 55: 4093 bytes 5 times --> 6.29 Mbps in 4966.71 usec > 56: 4096 bytes 5 times --> 6.30 Mbps in 4962.00 usec > 57: 4099 bytes 5 times --> 6.31 Mbps in 4957.71 usec > 58: 6141 bytes 5 times --> 49.25 Mbps in 951.40 usec > 59: 6144 bytes 5 times --> 49.23 Mbps in 952.21 usec > 60: 6147 bytes 5 times --> 49.18 Mbps in 953.69 usec > > Does anyone have any clue about where the problem might be? What is the driver in use ? Have you tried disabling tso/gso ? ethtool -k eth0 ethtool -K eth0 tso off gso off ^ permalink raw reply [flat|nested] 13+ messages in thread
* RE: FEC performance degradation with certain packet sizes 2013-12-18 17:38 ` Eric Dumazet @ 2013-12-19 2:44 ` fugang.duan 2013-12-19 23:04 ` Eric Dumazet 0 siblings, 1 reply; 13+ messages in thread From: fugang.duan @ 2013-12-19 2:44 UTC (permalink / raw) To: Eric Dumazet, Hector Palacios Cc: Marek Vasut, netdev, Fabio.Estevam, shawn.guo, l.stach, Frank.Li, bhutchings, davem From: Eric Dumazet <eric.dumazet@gmail.com> Data: Thursday, December 19, 2013 1:39 AM >To: Hector Palacios >Cc: Marek Vasut; netdev@vger.kernel.org; Estevam Fabio-R49496; >shawn.guo@linaro.org; l.stach@pengutronix.de; Li Frank-B20596; Duan Fugang- >B38611; bhutchings@solarflare.com; davem@davemloft.net >Subject: Re: FEC performance degradation with certain packet sizes > >On Wed, 2013-12-18 at 17:43 +0100, Hector Palacios wrote: >> Hello, >> >> I'm resending this thread (reworded the subject) with additional people on CC. >> I found the issue happens also with auto-negotiated link and is reproducible >on the >> i.MX6 as well as on the i.MX28. It looks like a problem with the fec driver. >> >> Steps to reproduce: >> On the target: >> netpipe >> On the host: >> netpipe -h <target_ip> -n 5 >> >> At certain packet sizes (starting always at 1533 bytes), the performance >drops >> dramatically: >> >> On i.MX28: >> [...] >> 42: 771 bytes 5 times --> 19.78 Mbps in 297.41 usec >> 43: 1021 bytes 5 times --> 23.29 Mbps in 334.41 usec >> 44: 1024 bytes 5 times --> 23.61 Mbps in 330.90 usec >> 45: 1027 bytes 5 times --> 23.43 Mbps in 334.41 usec >> 46: 1533 bytes 5 times --> 0.13 Mbps in 88817.49 usec >> 47: 1536 bytes 5 times --> 0.06 Mbps in 189914.91 usec >> 48: 1539 bytes 5 times --> 0.06 Mbps in 204917.19 usec >> 49: 2045 bytes 5 times --> 0.07 Mbps in 210931.79 usec >> 50: 2048 bytes 5 times --> 0.07 Mbps in 210919.10 usec >> 51: 2051 bytes 5 times --> 0.07 Mbps in 212915.71 usec >> 52: 3069 bytes 5 times --> 35.42 Mbps in 661.01 usec >> 53: 3072 bytes 5 times --> 35.57 Mbps in 659.00 usec >> 54: 3075 bytes 5 times --> 35.42 Mbps in 662.29 usec >> 55: 4093 bytes 5 times --> 40.03 Mbps in 780.19 usec >> 56: 4096 bytes 5 times --> 40.75 Mbps in 766.79 usec >> 57: 4099 bytes 5 times --> 40.64 Mbps in 769.49 usec >> 58: 6141 bytes 5 times --> 3.08 Mbps in 15187.90 usec >> 59: 6144 bytes 5 times --> 2.94 Mbps in 15928.19 usec >> 60: 6147 bytes 5 times --> 5.57 Mbps in 8418.91 usec >> 61: 8189 bytes 5 times --> 1.34 Mbps in 46574.90 usec >> 62: 8192 bytes 5 times --> 2.17 Mbps in 28781.99 usec >> 63: 8195 bytes 5 times --> 1.36 Mbps in 45923.69 usec >> 64: 12285 bytes 5 times --> 51.78 Mbps in 1810.21 usec >> 65: 12288 bytes 5 times --> 50.46 Mbps in 1857.81 usec >> 66: 12291 bytes 5 times --> 54.01 Mbps in 1736.21 usec >> 67: 16381 bytes 5 times --> 55.86 Mbps in 2237.50 usec >> 68: 16384 bytes 5 times --> 56.93 Mbps in 2195.79 usec >> 69: 16387 bytes 5 times --> 35.62 Mbps in 3509.60 usec >> 70: 24573 bytes 5 times --> 7.19 Mbps in 26075.60 usec >> 71: 24576 bytes 5 times --> 58.36 Mbps in 3212.59 usec >> 72: 24579 bytes 5 times --> 7.92 Mbps in 23678.90 usec >> 73: 32765 bytes 5 times --> 58.14 Mbps in 4299.79 usec >> 74: 32768 bytes 5 times --> 5.34 Mbps in 46810.20 usec >> 75: 32771 bytes 5 times --> 41.51 Mbps in 6023.21 usec >> 76: 49149 bytes 5 times --> 49.62 Mbps in 7557.20 usec >> 77: 49152 bytes 5 times --> 48.82 Mbps in 7681.11 usec >> >> On i.MX6: >> [...] >> 42: 771 bytes 5 times --> 16.21 Mbps in 362.91 usec >> 43: 1021 bytes 5 times --> 17.97 Mbps in 433.51 usec >> 44: 1024 bytes 5 times --> 18.19 Mbps in 429.40 usec >> 45: 1027 bytes 5 times --> 18.16 Mbps in 431.41 usec >> 46: 1533 bytes 5 times --> 2.35 Mbps in 4970.11 usec >> 47: 1536 bytes 5 times --> 2.36 Mbps in 4959.91 usec >> 48: 1539 bytes 5 times --> 2.37 Mbps in 4959.20 usec >> 49: 2045 bytes 5 times --> 3.14 Mbps in 4972.31 usec >> 50: 2048 bytes 5 times --> 3.15 Mbps in 4959.50 usec >> 51: 2051 bytes 5 times --> 3.15 Mbps in 4960.01 usec >> 52: 3069 bytes 5 times --> 4.70 Mbps in 4984.19 usec >> 53: 3072 bytes 5 times --> 4.73 Mbps in 4960.10 usec >> 54: 3075 bytes 5 times --> 4.73 Mbps in 4957.81 usec >> 55: 4093 bytes 5 times --> 6.29 Mbps in 4966.71 usec >> 56: 4096 bytes 5 times --> 6.30 Mbps in 4962.00 usec >> 57: 4099 bytes 5 times --> 6.31 Mbps in 4957.71 usec >> 58: 6141 bytes 5 times --> 49.25 Mbps in 951.40 usec >> 59: 6144 bytes 5 times --> 49.23 Mbps in 952.21 usec >> 60: 6147 bytes 5 times --> 49.18 Mbps in 953.69 usec >> >> Does anyone have any clue about where the problem might be? > >What is the driver in use ? > >Have you tried disabling tso/gso ? > >ethtool -k eth0 > >ethtool -K eth0 tso off gso off > Enet IP don't support tso feature. I will reproduce the issue in imx6q/dl sd platform, and analyze the issue. Previous test, we don't use netpipe tool test ethernet performance. Thanks, Andy ^ permalink raw reply [flat|nested] 13+ messages in thread
* RE: FEC performance degradation with certain packet sizes 2013-12-19 2:44 ` fugang.duan @ 2013-12-19 23:04 ` Eric Dumazet 2013-12-20 0:18 ` Shawn Guo 0 siblings, 1 reply; 13+ messages in thread From: Eric Dumazet @ 2013-12-19 23:04 UTC (permalink / raw) To: fugang.duan Cc: Hector Palacios, Marek Vasut, netdev, Fabio.Estevam, shawn.guo, l.stach, Frank.Li, bhutchings, davem On Thu, 2013-12-19 at 02:44 +0000, fugang.duan@freescale.com wrote: > Enet IP don't support tso feature. > > I will reproduce the issue in imx6q/dl sd platform, and analyze the issue. > Previous test, we don't use netpipe tool test ethernet performance. drivers/net/ethernet/freescale/fs_enet/fs_enet-main.c seems broken... If tx_skb_align_workaround() returns NULL, returning NETDEV_TX_BUSY is the worst possible thing to do. Packet should be dropped instead. Probably not related to your issue. ^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: FEC performance degradation with certain packet sizes 2013-12-19 23:04 ` Eric Dumazet @ 2013-12-20 0:18 ` Shawn Guo 0 siblings, 0 replies; 13+ messages in thread From: Shawn Guo @ 2013-12-20 0:18 UTC (permalink / raw) To: Eric Dumazet Cc: fugang.duan, Hector Palacios, Marek Vasut, netdev, Fabio.Estevam, l.stach, Frank.Li, bhutchings, davem On Thu, Dec 19, 2013 at 03:04:59PM -0800, Eric Dumazet wrote: > On Thu, 2013-12-19 at 02:44 +0000, fugang.duan@freescale.com wrote: > > > Enet IP don't support tso feature. > > > > I will reproduce the issue in imx6q/dl sd platform, and analyze the issue. > > Previous test, we don't use netpipe tool test ethernet performance. > > drivers/net/ethernet/freescale/fs_enet/fs_enet-main.c seems broken... The fec driver running on IMX is drivers/net/ethernet/freescale/fec_main.c Shawn > > If tx_skb_align_workaround() returns NULL, returning NETDEV_TX_BUSY > is the worst possible thing to do. > > Packet should be dropped instead. > > Probably not related to your issue. > > ^ permalink raw reply [flat|nested] 13+ messages in thread
* RE: FEC performance degradation with certain packet sizes 2013-12-18 16:43 ` FEC performance degradation with certain packet sizes Hector Palacios 2013-12-18 17:38 ` Eric Dumazet @ 2013-12-20 3:35 ` fugang.duan 2013-12-20 15:01 ` Hector Palacios 1 sibling, 1 reply; 13+ messages in thread From: fugang.duan @ 2013-12-20 3:35 UTC (permalink / raw) To: Hector Palacios, Marek Vasut, netdev Cc: Fabio.Estevam, shawn.guo, l.stach, Frank.Li, bhutchings, davem From: Hector Palacios <hector.palacios@digi.com> Data: Thursday, December 19, 2013 12:44 AM >To: Marek Vasut; netdev@vger.kernel.org >Cc: Estevam Fabio-R49496; shawn.guo@linaro.org; l.stach@pengutronix.de; Li >Frank-B20596; Duan Fugang-B38611; bhutchings@solarflare.com; >davem@davemloft.net >Subject: Re: FEC performance degradation with certain packet sizes > >Hello, > >I'm resending this thread (reworded the subject) with additional people on CC. >I found the issue happens also with auto-negotiated link and is reproducible on >the >i.MX6 as well as on the i.MX28. It looks like a problem with the fec driver. > >Steps to reproduce: >On the target: > netpipe >On the host: > netpipe -h <target_ip> -n 5 > >At certain packet sizes (starting always at 1533 bytes), the performance drops >dramatically: > >On i.MX28: >[...] > 42: 771 bytes 5 times --> 19.78 Mbps in 297.41 usec > 43: 1021 bytes 5 times --> 23.29 Mbps in 334.41 usec > 44: 1024 bytes 5 times --> 23.61 Mbps in 330.90 usec > 45: 1027 bytes 5 times --> 23.43 Mbps in 334.41 usec > 46: 1533 bytes 5 times --> 0.13 Mbps in 88817.49 usec > 47: 1536 bytes 5 times --> 0.06 Mbps in 189914.91 usec > 48: 1539 bytes 5 times --> 0.06 Mbps in 204917.19 usec > 49: 2045 bytes 5 times --> 0.07 Mbps in 210931.79 usec > 50: 2048 bytes 5 times --> 0.07 Mbps in 210919.10 usec > 51: 2051 bytes 5 times --> 0.07 Mbps in 212915.71 usec > 52: 3069 bytes 5 times --> 35.42 Mbps in 661.01 usec > 53: 3072 bytes 5 times --> 35.57 Mbps in 659.00 usec > 54: 3075 bytes 5 times --> 35.42 Mbps in 662.29 usec > 55: 4093 bytes 5 times --> 40.03 Mbps in 780.19 usec > 56: 4096 bytes 5 times --> 40.75 Mbps in 766.79 usec > 57: 4099 bytes 5 times --> 40.64 Mbps in 769.49 usec > 58: 6141 bytes 5 times --> 3.08 Mbps in 15187.90 usec > 59: 6144 bytes 5 times --> 2.94 Mbps in 15928.19 usec > 60: 6147 bytes 5 times --> 5.57 Mbps in 8418.91 usec > 61: 8189 bytes 5 times --> 1.34 Mbps in 46574.90 usec > 62: 8192 bytes 5 times --> 2.17 Mbps in 28781.99 usec > 63: 8195 bytes 5 times --> 1.36 Mbps in 45923.69 usec > 64: 12285 bytes 5 times --> 51.78 Mbps in 1810.21 usec > 65: 12288 bytes 5 times --> 50.46 Mbps in 1857.81 usec > 66: 12291 bytes 5 times --> 54.01 Mbps in 1736.21 usec > 67: 16381 bytes 5 times --> 55.86 Mbps in 2237.50 usec > 68: 16384 bytes 5 times --> 56.93 Mbps in 2195.79 usec > 69: 16387 bytes 5 times --> 35.62 Mbps in 3509.60 usec > 70: 24573 bytes 5 times --> 7.19 Mbps in 26075.60 usec > 71: 24576 bytes 5 times --> 58.36 Mbps in 3212.59 usec > 72: 24579 bytes 5 times --> 7.92 Mbps in 23678.90 usec > 73: 32765 bytes 5 times --> 58.14 Mbps in 4299.79 usec > 74: 32768 bytes 5 times --> 5.34 Mbps in 46810.20 usec > 75: 32771 bytes 5 times --> 41.51 Mbps in 6023.21 usec > 76: 49149 bytes 5 times --> 49.62 Mbps in 7557.20 usec > 77: 49152 bytes 5 times --> 48.82 Mbps in 7681.11 usec > >On i.MX6: >[...] > 42: 771 bytes 5 times --> 16.21 Mbps in 362.91 usec > 43: 1021 bytes 5 times --> 17.97 Mbps in 433.51 usec > 44: 1024 bytes 5 times --> 18.19 Mbps in 429.40 usec > 45: 1027 bytes 5 times --> 18.16 Mbps in 431.41 usec > 46: 1533 bytes 5 times --> 2.35 Mbps in 4970.11 usec > 47: 1536 bytes 5 times --> 2.36 Mbps in 4959.91 usec > 48: 1539 bytes 5 times --> 2.37 Mbps in 4959.20 usec > 49: 2045 bytes 5 times --> 3.14 Mbps in 4972.31 usec > 50: 2048 bytes 5 times --> 3.15 Mbps in 4959.50 usec > 51: 2051 bytes 5 times --> 3.15 Mbps in 4960.01 usec > 52: 3069 bytes 5 times --> 4.70 Mbps in 4984.19 usec > 53: 3072 bytes 5 times --> 4.73 Mbps in 4960.10 usec > 54: 3075 bytes 5 times --> 4.73 Mbps in 4957.81 usec > 55: 4093 bytes 5 times --> 6.29 Mbps in 4966.71 usec > 56: 4096 bytes 5 times --> 6.30 Mbps in 4962.00 usec > 57: 4099 bytes 5 times --> 6.31 Mbps in 4957.71 usec > 58: 6141 bytes 5 times --> 49.25 Mbps in 951.40 usec > 59: 6144 bytes 5 times --> 49.23 Mbps in 952.21 usec > 60: 6147 bytes 5 times --> 49.18 Mbps in 953.69 usec > >Does anyone have any clue about where the problem might be? > >Best regards, >-- >Hector Palacios > I can reproduce the issue on imx6q/dl platform with freescale internal kernel tree. This issue must be related to cpufreq, when set scaling_governor to performance: echo performance > /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor And then do NPtcp test, the result as below: 24: 99 bytes 5 times --> 9.89 Mbps in 76.40 usec 25: 125 bytes 5 times --> 12.10 Mbps in 78.80 usec 26: 128 bytes 5 times --> 12.27 Mbps in 79.60 usec 27: 131 bytes 5 times --> 12.80 Mbps in 78.10 usec 28: 189 bytes 5 times --> 18.00 Mbps in 80.10 usec 29: 192 bytes 5 times --> 18.31 Mbps in 80.00 usec 30: 195 bytes 5 times --> 18.41 Mbps in 80.80 usec 31: 253 bytes 5 times --> 23.34 Mbps in 82.70 usec 32: 256 bytes 5 times --> 23.91 Mbps in 81.70 usec 33: 259 bytes 5 times --> 24.19 Mbps in 81.70 usec 34: 381 bytes 5 times --> 33.18 Mbps in 87.60 usec 35: 384 bytes 5 times --> 33.87 Mbps in 86.50 usec 36: 387 bytes 5 times --> 34.41 Mbps in 85.80 usec 37: 509 bytes 5 times --> 42.72 Mbps in 90.90 usec 38: 512 bytes 5 times --> 42.60 Mbps in 91.70 usec 39: 515 bytes 5 times --> 42.80 Mbps in 91.80 usec 40: 765 bytes 5 times --> 56.45 Mbps in 103.40 usec 41: 768 bytes 5 times --> 57.11 Mbps in 102.60 usec 42: 771 bytes 5 times --> 57.22 Mbps in 102.80 usec 43: 1021 bytes 5 times --> 70.69 Mbps in 110.20 usec 44: 1024 bytes 5 times --> 70.70 Mbps in 110.50 usec 45: 1027 bytes 5 times --> 69.59 Mbps in 112.60 usec 46: 1533 bytes 5 times --> 73.56 Mbps in 159.00 usec 47: 1536 bytes 5 times --> 72.92 Mbps in 160.70 usec 48: 1539 bytes 5 times --> 73.80 Mbps in 159.10 usec 49: 2045 bytes 5 times --> 93.59 Mbps in 166.70 usec 50: 2048 bytes 5 times --> 94.07 Mbps in 166.10 usec 51: 2051 bytes 5 times --> 92.92 Mbps in 168.40 usec 52: 3069 bytes 5 times --> 123.43 Mbps in 189.70 usec 53: 3072 bytes 5 times --> 123.68 Mbps in 189.50 usec Thanks, Andy ^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: FEC performance degradation with certain packet sizes 2013-12-20 3:35 ` fugang.duan @ 2013-12-20 15:01 ` Hector Palacios 2013-12-23 1:08 ` fugang.duan 2013-12-23 2:52 ` fugang.duan 0 siblings, 2 replies; 13+ messages in thread From: Hector Palacios @ 2013-12-20 15:01 UTC (permalink / raw) To: fugang.duan, Marek Vasut, netdev Cc: Fabio.Estevam, shawn.guo, l.stach, Frank.Li, bhutchings, davem Dear Andy, On 12/20/2013 04:35 AM, fugang.duan@freescale.com wrote: > [...] > > I can reproduce the issue on imx6q/dl platform with freescale internal kernel tree. > > This issue must be related to cpufreq, when set scaling_governor to performance: > echo performance > /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor > > And then do NPtcp test, the result as below: > > 24: 99 bytes 5 times --> 9.89 Mbps in 76.40 usec > 25: 125 bytes 5 times --> 12.10 Mbps in 78.80 usec > 26: 128 bytes 5 times --> 12.27 Mbps in 79.60 usec > 27: 131 bytes 5 times --> 12.80 Mbps in 78.10 usec > 28: 189 bytes 5 times --> 18.00 Mbps in 80.10 usec > 29: 192 bytes 5 times --> 18.31 Mbps in 80.00 usec > 30: 195 bytes 5 times --> 18.41 Mbps in 80.80 usec > 31: 253 bytes 5 times --> 23.34 Mbps in 82.70 usec > 32: 256 bytes 5 times --> 23.91 Mbps in 81.70 usec > 33: 259 bytes 5 times --> 24.19 Mbps in 81.70 usec > 34: 381 bytes 5 times --> 33.18 Mbps in 87.60 usec > 35: 384 bytes 5 times --> 33.87 Mbps in 86.50 usec > 36: 387 bytes 5 times --> 34.41 Mbps in 85.80 usec > 37: 509 bytes 5 times --> 42.72 Mbps in 90.90 usec > 38: 512 bytes 5 times --> 42.60 Mbps in 91.70 usec > 39: 515 bytes 5 times --> 42.80 Mbps in 91.80 usec > 40: 765 bytes 5 times --> 56.45 Mbps in 103.40 usec > 41: 768 bytes 5 times --> 57.11 Mbps in 102.60 usec > 42: 771 bytes 5 times --> 57.22 Mbps in 102.80 usec > 43: 1021 bytes 5 times --> 70.69 Mbps in 110.20 usec > 44: 1024 bytes 5 times --> 70.70 Mbps in 110.50 usec > 45: 1027 bytes 5 times --> 69.59 Mbps in 112.60 usec > 46: 1533 bytes 5 times --> 73.56 Mbps in 159.00 usec > 47: 1536 bytes 5 times --> 72.92 Mbps in 160.70 usec > 48: 1539 bytes 5 times --> 73.80 Mbps in 159.10 usec > 49: 2045 bytes 5 times --> 93.59 Mbps in 166.70 usec > 50: 2048 bytes 5 times --> 94.07 Mbps in 166.10 usec > 51: 2051 bytes 5 times --> 92.92 Mbps in 168.40 usec > 52: 3069 bytes 5 times --> 123.43 Mbps in 189.70 usec > 53: 3072 bytes 5 times --> 123.68 Mbps in 189.50 usec You are right. Unfortunately, this does not work on i.MX28 (at least for me). Couldn't it be that the cpufreq is masking the problem on the i.MX6? Best regards, -- Hector Palacios ^ permalink raw reply [flat|nested] 13+ messages in thread
* RE: FEC performance degradation with certain packet sizes 2013-12-20 15:01 ` Hector Palacios @ 2013-12-23 1:08 ` fugang.duan 2013-12-23 2:52 ` fugang.duan 1 sibling, 0 replies; 13+ messages in thread From: fugang.duan @ 2013-12-23 1:08 UTC (permalink / raw) To: Hector Palacios, Marek Vasut, netdev Cc: Fabio.Estevam, shawn.guo, l.stach, Frank.Li, bhutchings, davem From: Hector Palacios <hector.palacios@digi.com> Data: Friday, December 20, 2013 11:02 PM >To: Duan Fugang-B38611; Marek Vasut; netdev@vger.kernel.org >Cc: Estevam Fabio-R49496; shawn.guo@linaro.org; l.stach@pengutronix.de; Li >Frank-B20596; bhutchings@solarflare.com; davem@davemloft.net >Subject: Re: FEC performance degradation with certain packet sizes > >Dear Andy, > >On 12/20/2013 04:35 AM, fugang.duan@freescale.com wrote: >> [...] >> >> I can reproduce the issue on imx6q/dl platform with freescale internal kernel >tree. >> >> This issue must be related to cpufreq, when set scaling_governor to >performance: >> echo performance > >> /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor >> >> And then do NPtcp test, the result as below: >> >> 24: 99 bytes 5 times --> 9.89 Mbps in 76.40 usec >> 25: 125 bytes 5 times --> 12.10 Mbps in 78.80 usec >> 26: 128 bytes 5 times --> 12.27 Mbps in 79.60 usec >> 27: 131 bytes 5 times --> 12.80 Mbps in 78.10 usec >> 28: 189 bytes 5 times --> 18.00 Mbps in 80.10 usec >> 29: 192 bytes 5 times --> 18.31 Mbps in 80.00 usec >> 30: 195 bytes 5 times --> 18.41 Mbps in 80.80 usec >> 31: 253 bytes 5 times --> 23.34 Mbps in 82.70 usec >> 32: 256 bytes 5 times --> 23.91 Mbps in 81.70 usec >> 33: 259 bytes 5 times --> 24.19 Mbps in 81.70 usec >> 34: 381 bytes 5 times --> 33.18 Mbps in 87.60 usec >> 35: 384 bytes 5 times --> 33.87 Mbps in 86.50 usec >> 36: 387 bytes 5 times --> 34.41 Mbps in 85.80 usec >> 37: 509 bytes 5 times --> 42.72 Mbps in 90.90 usec >> 38: 512 bytes 5 times --> 42.60 Mbps in 91.70 usec >> 39: 515 bytes 5 times --> 42.80 Mbps in 91.80 usec >> 40: 765 bytes 5 times --> 56.45 Mbps in 103.40 usec >> 41: 768 bytes 5 times --> 57.11 Mbps in 102.60 usec >> 42: 771 bytes 5 times --> 57.22 Mbps in 102.80 usec >> 43: 1021 bytes 5 times --> 70.69 Mbps in 110.20 usec >> 44: 1024 bytes 5 times --> 70.70 Mbps in 110.50 usec >> 45: 1027 bytes 5 times --> 69.59 Mbps in 112.60 usec >> 46: 1533 bytes 5 times --> 73.56 Mbps in 159.00 usec >> 47: 1536 bytes 5 times --> 72.92 Mbps in 160.70 usec >> 48: 1539 bytes 5 times --> 73.80 Mbps in 159.10 usec >> 49: 2045 bytes 5 times --> 93.59 Mbps in 166.70 usec >> 50: 2048 bytes 5 times --> 94.07 Mbps in 166.10 usec >> 51: 2051 bytes 5 times --> 92.92 Mbps in 168.40 usec >> 52: 3069 bytes 5 times --> 123.43 Mbps in 189.70 usec >> 53: 3072 bytes 5 times --> 123.68 Mbps in 189.50 usec > >You are right. Unfortunately, this does not work on i.MX28 (at least for me). >Couldn't it be that the cpufreq is masking the problem on the i.MX6? > >Best regards, >-- >Hector Palacios > I will test it on imx28 platform. And then analyze the result. Thanks, Andy ^ permalink raw reply [flat|nested] 13+ messages in thread
* RE: FEC performance degradation with certain packet sizes 2013-12-20 15:01 ` Hector Palacios 2013-12-23 1:08 ` fugang.duan @ 2013-12-23 2:52 ` fugang.duan 2014-01-21 17:49 ` Marek Vasut 1 sibling, 1 reply; 13+ messages in thread From: fugang.duan @ 2013-12-23 2:52 UTC (permalink / raw) To: Hector Palacios, Marek Vasut, netdev Cc: Fabio.Estevam, shawn.guo, l.stach, Frank.Li, bhutchings, davem From: Hector Palacios <hector.palacios@digi.com> Sent: Friday, December 20, 2013 11:02 PM >To: Duan Fugang-B38611; Marek Vasut; netdev@vger.kernel.org >Cc: Estevam Fabio-R49496; shawn.guo@linaro.org; l.stach@pengutronix.de; Li >Frank-B20596; bhutchings@solarflare.com; davem@davemloft.net >Subject: Re: FEC performance degradation with certain packet sizes > >Dear Andy, > >On 12/20/2013 04:35 AM, fugang.duan@freescale.com wrote: >> [...] >> >> I can reproduce the issue on imx6q/dl platform with freescale internal kernel >tree. >> >> This issue must be related to cpufreq, when set scaling_governor to >performance: >> echo performance > >> /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor >> >> And then do NPtcp test, the result as below: >> >> 24: 99 bytes 5 times --> 9.89 Mbps in 76.40 usec >> 25: 125 bytes 5 times --> 12.10 Mbps in 78.80 usec >> 26: 128 bytes 5 times --> 12.27 Mbps in 79.60 usec >> 27: 131 bytes 5 times --> 12.80 Mbps in 78.10 usec >> 28: 189 bytes 5 times --> 18.00 Mbps in 80.10 usec >> 29: 192 bytes 5 times --> 18.31 Mbps in 80.00 usec >> 30: 195 bytes 5 times --> 18.41 Mbps in 80.80 usec >> 31: 253 bytes 5 times --> 23.34 Mbps in 82.70 usec >> 32: 256 bytes 5 times --> 23.91 Mbps in 81.70 usec >> 33: 259 bytes 5 times --> 24.19 Mbps in 81.70 usec >> 34: 381 bytes 5 times --> 33.18 Mbps in 87.60 usec >> 35: 384 bytes 5 times --> 33.87 Mbps in 86.50 usec >> 36: 387 bytes 5 times --> 34.41 Mbps in 85.80 usec >> 37: 509 bytes 5 times --> 42.72 Mbps in 90.90 usec >> 38: 512 bytes 5 times --> 42.60 Mbps in 91.70 usec >> 39: 515 bytes 5 times --> 42.80 Mbps in 91.80 usec >> 40: 765 bytes 5 times --> 56.45 Mbps in 103.40 usec >> 41: 768 bytes 5 times --> 57.11 Mbps in 102.60 usec >> 42: 771 bytes 5 times --> 57.22 Mbps in 102.80 usec >> 43: 1021 bytes 5 times --> 70.69 Mbps in 110.20 usec >> 44: 1024 bytes 5 times --> 70.70 Mbps in 110.50 usec >> 45: 1027 bytes 5 times --> 69.59 Mbps in 112.60 usec >> 46: 1533 bytes 5 times --> 73.56 Mbps in 159.00 usec >> 47: 1536 bytes 5 times --> 72.92 Mbps in 160.70 usec >> 48: 1539 bytes 5 times --> 73.80 Mbps in 159.10 usec >> 49: 2045 bytes 5 times --> 93.59 Mbps in 166.70 usec >> 50: 2048 bytes 5 times --> 94.07 Mbps in 166.10 usec >> 51: 2051 bytes 5 times --> 92.92 Mbps in 168.40 usec >> 52: 3069 bytes 5 times --> 123.43 Mbps in 189.70 usec >> 53: 3072 bytes 5 times --> 123.68 Mbps in 189.50 usec > >You are right. Unfortunately, this does not work on i.MX28 (at least for me). >Couldn't it be that the cpufreq is masking the problem on the i.MX6? > >Best regards, >-- >Hector Palacios > I reproduce the issue on imx28 evk platform, imx28 has no specific cpufreq driver. In kernel 3.13, the ethernet driver is almost the same for imx28 and imx6 since they use the Same enet IP, but imx6 enet IP have some evolution. Now I don't know the cause. When I am free, I will dig out it. Thanks, Andy ^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: FEC performance degradation with certain packet sizes 2013-12-23 2:52 ` fugang.duan @ 2014-01-21 17:49 ` Marek Vasut 0 siblings, 0 replies; 13+ messages in thread From: Marek Vasut @ 2014-01-21 17:49 UTC (permalink / raw) To: fugang.duan Cc: Hector Palacios, netdev, Fabio.Estevam, shawn.guo, l.stach, Frank.Li, bhutchings, davem On Monday, December 23, 2013 at 03:52:20 AM, fugang.duan@freescale.com wrote: > From: Hector Palacios <hector.palacios@digi.com> > Sent: Friday, December 20, 2013 11:02 PM > > >To: Duan Fugang-B38611; Marek Vasut; netdev@vger.kernel.org > >Cc: Estevam Fabio-R49496; shawn.guo@linaro.org; l.stach@pengutronix.de; Li > >Frank-B20596; bhutchings@solarflare.com; davem@davemloft.net > >Subject: Re: FEC performance degradation with certain packet sizes > > > >Dear Andy, > > > >On 12/20/2013 04:35 AM, fugang.duan@freescale.com wrote: > >> [...] > >> > >> I can reproduce the issue on imx6q/dl platform with freescale internal > >> kernel > > > >tree. > > > >> This issue must be related to cpufreq, when set scaling_governor to > > > >performance: > >> echo performance > > >> /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor > >> > >> And then do NPtcp test, the result as below: > >> 24: 99 bytes 5 times --> 9.89 Mbps in 76.40 usec > >> 25: 125 bytes 5 times --> 12.10 Mbps in 78.80 usec > >> 26: 128 bytes 5 times --> 12.27 Mbps in 79.60 usec > >> 27: 131 bytes 5 times --> 12.80 Mbps in 78.10 usec > >> 28: 189 bytes 5 times --> 18.00 Mbps in 80.10 usec > >> 29: 192 bytes 5 times --> 18.31 Mbps in 80.00 usec > >> 30: 195 bytes 5 times --> 18.41 Mbps in 80.80 usec > >> 31: 253 bytes 5 times --> 23.34 Mbps in 82.70 usec > >> 32: 256 bytes 5 times --> 23.91 Mbps in 81.70 usec > >> 33: 259 bytes 5 times --> 24.19 Mbps in 81.70 usec > >> 34: 381 bytes 5 times --> 33.18 Mbps in 87.60 usec > >> 35: 384 bytes 5 times --> 33.87 Mbps in 86.50 usec > >> 36: 387 bytes 5 times --> 34.41 Mbps in 85.80 usec > >> 37: 509 bytes 5 times --> 42.72 Mbps in 90.90 usec > >> 38: 512 bytes 5 times --> 42.60 Mbps in 91.70 usec > >> 39: 515 bytes 5 times --> 42.80 Mbps in 91.80 usec > >> 40: 765 bytes 5 times --> 56.45 Mbps in 103.40 usec > >> 41: 768 bytes 5 times --> 57.11 Mbps in 102.60 usec > >> 42: 771 bytes 5 times --> 57.22 Mbps in 102.80 usec > >> 43: 1021 bytes 5 times --> 70.69 Mbps in 110.20 usec > >> 44: 1024 bytes 5 times --> 70.70 Mbps in 110.50 usec > >> 45: 1027 bytes 5 times --> 69.59 Mbps in 112.60 usec > >> 46: 1533 bytes 5 times --> 73.56 Mbps in 159.00 usec > >> 47: 1536 bytes 5 times --> 72.92 Mbps in 160.70 usec > >> 48: 1539 bytes 5 times --> 73.80 Mbps in 159.10 usec > >> 49: 2045 bytes 5 times --> 93.59 Mbps in 166.70 usec > >> 50: 2048 bytes 5 times --> 94.07 Mbps in 166.10 usec > >> 51: 2051 bytes 5 times --> 92.92 Mbps in 168.40 usec > >> 52: 3069 bytes 5 times --> 123.43 Mbps in 189.70 usec > >> 53: 3072 bytes 5 times --> 123.68 Mbps in 189.50 usec > > > >You are right. Unfortunately, this does not work on i.MX28 (at least for > >me). Couldn't it be that the cpufreq is masking the problem on the i.MX6? > > > >Best regards, > >-- > >Hector Palacios > > I reproduce the issue on imx28 evk platform, imx28 has no specific cpufreq > driver. In kernel 3.13, the ethernet driver is almost the same for imx28 > and imx6 since they use the Same enet IP, but imx6 enet IP have some > evolution. > > Now I don't know the cause. When I am free, I will dig out it. Hi! Is there any progress on this issue ? Did you manage to find anything out please? Best regards, Marek Vasut ^ permalink raw reply [flat|nested] 13+ messages in thread
end of thread, other threads:[~2014-01-21 17:49 UTC | newest] Thread overview: 13+ messages (download: mbox.gz / follow: Atom feed) -- links below jump to the message on this page -- 2013-11-22 12:40 FEC performance degradation on iMX28 with forced link media Hector Palacios 2013-11-24 4:40 ` Marek Vasut 2013-11-25 8:56 ` Hector Palacios 2013-12-18 16:43 ` FEC performance degradation with certain packet sizes Hector Palacios 2013-12-18 17:38 ` Eric Dumazet 2013-12-19 2:44 ` fugang.duan 2013-12-19 23:04 ` Eric Dumazet 2013-12-20 0:18 ` Shawn Guo 2013-12-20 3:35 ` fugang.duan 2013-12-20 15:01 ` Hector Palacios 2013-12-23 1:08 ` fugang.duan 2013-12-23 2:52 ` fugang.duan 2014-01-21 17:49 ` Marek Vasut
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for NNTP newsgroup(s).