Zynq上でiperf3による帯域テスト
前々から気になっていた、Zynqでのイーサネット帯域を測定しました。
Zynqで使用しているカーネルは3.15.0-xilinx(z-turn board付属)です。 通信相手は、仮想マシンで動作しているUbuntu(カーネルは3.13.0-32-generic)です。 Windows上でのiperfと通信させても、それほど大きな違いはありませんでした。
Zynq側iperfのコンソール出力を以下に示します。
root@ubuntu-armhf:/home/ubuntu/iperf-3.1.3/src# ./iperf3 -s
warning: this system does not seem to support IPv6 - trying IPv4
-----------------------------------------------------------
Server listening on 5201
-----------------------------------------------------------
Accepted connection from 192.168.0.100, port 33239
[ 5] local 192.168.0.90 port 5201 connected to 192.168.0.100 port 33240
[ ID] Interval Transfer Bandwidth
[ 5] 0.00-1.00 sec 59.0 MBytes 495 Mbits/sec
[ 5] 1.00-2.00 sec 61.8 MBytes 516 Mbits/sec
[ 5] 2.00-3.00 sec 61.9 MBytes 519 Mbits/sec
[ 5] 3.00-4.00 sec 61.8 MBytes 518 Mbits/sec
[ 5] 4.00-5.00 sec 61.9 MBytes 518 Mbits/sec
[ 5] 5.00-6.00 sec 61.6 MBytes 519 Mbits/sec
[ 5] 6.00-7.00 sec 61.6 MBytes 517 Mbits/sec
[ 5] 7.00-8.00 sec 61.8 MBytes 518 Mbits/sec
[ 5] 8.00-9.00 sec 61.6 MBytes 515 Mbits/sec
[ 5] 9.00-10.00 sec 61.6 MBytes 518 Mbits/sec
- - - - - - - - - - - - - - - - - - - - - - - - -
[ ID] Interval Transfer Bandwidth
[ 5] 0.00-10.00 sec 0.00 Bytes 0.00 bits/sec sender
[ 5] 0.00-10.00 sec 615 MBytes 515 Mbits/sec receiver
-----------------------------------------------------------
Server listening on 5201
-----------------------------------------------------------
^Ciperf3: interrupt - the server has terminated
root@ubuntu-armhf:/home/ubuntu/iperf-3.1.3/src# ./iperf3 -c 192.168.0.100
Connecting to host 192.168.0.100, port 5201
[ 4] local 192.168.0.90 port 33104 connected to 192.168.0.100 port 5201
[ ID] Interval Transfer Bandwidth Retr Cwnd
[ 4] 0.00-1.01 sec 50.0 MBytes 416 Mbits/sec 0 233 KBytes
[ 4] 1.01-2.02 sec 49.7 MBytes 412 Mbits/sec 0 298 KBytes
[ 4] 2.02-3.02 sec 48.9 MBytes 409 Mbits/sec 1 242 KBytes
[ 4] 3.02-4.00 sec 47.5 MBytes 405 Mbits/sec 0 247 KBytes
[ 4] 4.00-5.02 sec 50.0 MBytes 412 Mbits/sec 0 247 KBytes
[ 4] 5.02-6.02 sec 48.8 MBytes 409 Mbits/sec 0 266 KBytes
[ 4] 6.02-7.02 sec 48.8 MBytes 411 Mbits/sec 0 267 KBytes
[ 4] 7.02-8.00 sec 48.5 MBytes 413 Mbits/sec 0 281 KBytes
[ 4] 8.00-9.02 sec 49.0 MBytes 404 Mbits/sec 0 293 KBytes
[ 4] 9.02-10.00 sec 48.5 MBytes 414 Mbits/sec 0 303 KBytes
- - - - - - - - - - - - - - - - - - - - - - - - -
[ ID] Interval Transfer Bandwidth Retr
[ 4] 0.00-10.00 sec 490 MBytes 411 Mbits/sec 1 sender
[ 4] 0.00-10.00 sec 489 MBytes 410 Mbits/sec receiver
iperf Done.
通信方向によって、かなり帯域に違いがあります。サーバモードで動作しているときの方が高速のようです。
カーネルを新しくしたりすることで高速化するのかもしれませんが、思ったよりパフォーマンスが悪い印象です。