[meta-xilinx] Ethernet Transfer Speed Question
Mike Looijmans
mike.looijmans at topic.nl
Wed May 6 04:48:41 PDT 2015
On 06-05-15 13:39, Joe Nicholson wrote:
> Hi Nathan et al
>
> I've a question regarding data transfer speed over Ethernet using the Xilinx
> 3.14 kernel built from the meta-xilinx layer.
>
> We've previously been using a 'custom' 3.9 kernel (basically a slightly
> customised Xilinx kernel, with a couple of new drivers… no important changes).
>
> We're keen to move to the standard Xilinx 3.14 kernel as built from
> meta-xilinx. Our target is zc702-zynq7.
>
> On the 3.9 kernel, an iperf test of data transfer over the Ethernet gives a
> massively respectable 480Mbits/second!
>
> On the 3.14 kernel, however, the same test gives just 327Mbits/second.
>
> 327Mbits/second is OK, but still much lower than the Xilinx 3.9 kernel.
>
> I tried make oldconfig of the old 3.9 kernel configuration used that instead
> of the default config, but had the same result.
>
> Is it possible that the Ethernet driver has had some speed retardation in the
> driver recently, between 3.9 and 3.14? Any pointers would be helpful.
>
> In reality I think we can probably cope with 327Mbits/second, however the
> customer's initial tests were on the 3.9 kernel... so I'm keen to trace the
> point of the speed reduction.
>
> On a similar issue, I tried the Daisy branch of meta-xilinx with the 3.14
> kernel – it achieves only 107Mbit/second!!
>
> I traced this down to CONFIG_DEBUG_WW_MUTEX_SLOWPATH=y and a few other similar
> debugging options being switched on by default. These are all nicely switch
> off in the Dizzy branch.
>
> So really, I'm keen to understand why the Ethernet transfer speed of the zc702
> appears to have slowed down and whether there's anything I can do to speed it
> back up!
>
> …e.g. move to Fido and a 3.17 kernel J
>
> Cheers!
>
> Joe Nicholson
>
>
>
With the 3.18 kernel, iperf3 gives me the following results on a
topic-miami-florida board (also a zynq, 7015, so results should be the same as
for any other board):
$ iperf3 -c 192.168.80.138
Connecting to host 192.168.80.138, port 5201
[ 4] local 192.168.80.121 port 60370 connected to 192.168.80.138 port 5201
[ ID] Interval Transfer Bandwidth Retr Cwnd
[ 4] 0.00-1.00 sec 75.6 MBytes 634 Mbits/sec 41 348 KBytes
[ 4] 1.00-2.00 sec 75.1 MBytes 630 Mbits/sec 0 397 KBytes
[ 4] 2.00-3.00 sec 74.7 MBytes 627 Mbits/sec 0 399 KBytes
[ 4] 3.00-4.00 sec 75.6 MBytes 634 Mbits/sec 0 399 KBytes
[ 4] 4.00-5.00 sec 74.7 MBytes 627 Mbits/sec 34 321 KBytes
[ 4] 5.00-6.00 sec 76.2 MBytes 639 Mbits/sec 0 346 KBytes
[ 4] 6.00-7.00 sec 73.6 MBytes 618 Mbits/sec 0 346 KBytes
[ 4] 7.00-8.00 sec 75.3 MBytes 631 Mbits/sec 0 372 KBytes
[ 4] 8.00-9.00 sec 75.3 MBytes 632 Mbits/sec 0 375 KBytes
[ 4] 9.00-10.00 sec 77.0 MBytes 646 Mbits/sec 0 378 KBytes
- - - - - - - - - - - - - - - - - - - - - - - - -
[ ID] Interval Transfer Bandwidth Retr
[ 4] 0.00-10.00 sec 753 MBytes 632 Mbits/sec 75 sender
[ 4] 0.00-10.00 sec 751 MBytes 630 Mbits/sec receiver
$ iperf3 -c 192.168.80.138 -R
Connecting to host 192.168.80.138, port 5201
Reverse mode, remote host 192.168.80.138 is sending
[ 4] local 192.168.80.121 port 60366 connected to 192.168.80.138 port 5201
[ ID] Interval Transfer Bandwidth
[ 4] 0.00-1.00 sec 79.5 MBytes 667 Mbits/sec
[ 4] 1.00-2.00 sec 79.3 MBytes 665 Mbits/sec
[ 4] 2.00-3.00 sec 79.3 MBytes 665 Mbits/sec
[ 4] 3.00-4.00 sec 84.6 MBytes 710 Mbits/sec
[ 4] 4.00-5.00 sec 103 MBytes 863 Mbits/sec
[ 4] 5.00-6.00 sec 103 MBytes 865 Mbits/sec
[ 4] 6.00-7.00 sec 103 MBytes 866 Mbits/sec
[ 4] 7.00-8.00 sec 103 MBytes 866 Mbits/sec
[ 4] 8.00-9.00 sec 103 MBytes 867 Mbits/sec
[ 4] 9.00-10.00 sec 103 MBytes 866 Mbits/sec
- - - - - - - - - - - - - - - - - - - - - - - - -
[ ID] Interval Transfer Bandwidth Retr
[ 4] 0.00-10.00 sec 943 MBytes 791 Mbits/sec 0 sender
[ 4] 0.00-10.00 sec 943 MBytes 791 Mbits/sec receiver
The board is connected to the company network switch, and that's connected to
the PC I'm running this on.
Apparently, something got fixed in later kernels :-)
Kind regards,
Mike Looijmans
System Expert
TOPIC Embedded Products
Eindhovenseweg 32-C, NL-5683 KH Best
Postbus 440, NL-5680 AK Best
Telefoon: +31 (0) 499 33 69 79
Telefax: +31 (0) 499 33 69 70
E-mail: mike.looijmans at topicproducts.com
Website: www.topicproducts.com
Please consider the environment before printing this e-mail
More information about the meta-xilinx
mailing list