By
Toradex秦海
1).简介
NXP iMX8已经正式发布,相较于之前NXP i.MX系列的主力产品iMX6,其性能有了大幅提升,本文就针对网络接口对NXP iMX8和iMX6两款ARM处理器进行对比测试。
本文演示所使用的ARM平台来自Toradex基于NXP iMX8 SoC的Apalis iMX8 ARM核心板和基于NXP iMX6Q SoC的Apalis iMX6 ARM核心板。
2).准备
核心版配合,Apalis iMX8QM安装Toradex V3.0b2 Linux demo image,同时连接调试串口UART1(载板X29)到开发主机方便调试。更多关于Apalis iMX8配合Apalis Evaluation Board载板的说明请参考和。
核心版配合,Apalis iMX6Q安装Toradex V2.8 Linux demo image,同时连接调试串口UART1(载板X29)到开发主机方便调试。更多关于Apalis iMX6配合Apalis Evaluation Board载板的说明请参考和。
c). Ubuntu linux PC主机, 用于分别和Apalis iMX8、Apalis iMX6进行收发测试。
d).测试工具软件使用iperf3工具,Toradex Linux demo image里面已经默认集成,Ubuntu系统(这里以18.04为例)要通过apt命令来安装iperf3
----------------------
$ sudo apt update
$ sudo apt install iperf3
----------------------
e).网络连接拓扑为Apalis iMX8QM、Apalis iMX6Q以及Ubuntu PC都通过千兆有线网络连接到同一个局域网。
3). TCP网络传输性能测试对比
a). Apalis iMX6Q/Apalis iMX8QM作为Server端接收,Ubuntu PC作为Client端发送测试
./ Apalis iMX6Q/Apalis iMX8QM Server端运行下面命令
----------------------
$ iperf3 -s
----------------------
./ Apalis iMX6Q
----------------------
$ iperf3 -c [IP of Apalis iMX6Q] -t 60 -i
10 -w 300K
…
[ ID] Interval Transfer Bandwidth Retr
[
4] 0.00-60.00 sec
4.01 GBytes 574 Mbits/sec 1 sender
[
4] 0.00-60.00 sec
4.01 GBytes 574 Mbits/sec receiver
----------------------
./ Apalis iMX8QM
----------------------
$ iperf3 -c [IP of Apalis iMX8QM] -t 60 -i
10
…
[ ID] Interval Transfer Bandwidth Retr
[
4] 0.00-60.00 sec
6.52 GBytes 934 Mbits/sec 0 sender
[
4] 0.00-60.00 sec
6.52 GBytes 934 Mbits/sec receiver
----------------------
b). Apalis iMX6Q/Apalis iMX8QM作为Client端发送,Ubuntu PC作为Sever端接收测试
./ Ubuntu PC server端运行下面命令
----------------------
$ iperf3 -s
----------------------
./ Apalis iMX6Q Client端连接测试
----------------------
root@apalis-imx6:~# iperf3 -c [IP of Ubuntu
PC] -t 60 -i 10
…
[ ID] Interval Transfer Bitrate Retr
[
5] 0.00-60.00 sec
2.84 GBytes 406 Mbits/sec 0 sender
[
5] 0.00-60.00 sec
2.84 GBytes 406 Mbits/sec receiver
----------------------
./ Apalis iMX8QM Client端连接测试
----------------------
root@apalis-imx8:~# iperf3 -c [IP of Ubuntu
PC] -t 60 -i 10
…
[ ID] Interval Transfer Bitrate Retr
[
5] 0.00-60.00 sec
6.39 GBytes 915 Mbits/sec 0 sender
[ 5] 0.00-60.00
sec 6.39 GBytes 915 Mbits/sec receiver
----------------------
c).测试结果汇总
项目
TCP发送测试
TCP接收测试
Apalis
iMX6Q
406 Mb/s
574 Mb/s
Apalis
iMX8QM
915 Mb/s
934 Mb/s
4). UDP网络传输性能测试对比
a). Apalis iMX6Q/Apalis iMX8QM作为Server端接收,Ubuntu PC作为Client端发送测试
./ Apalis iMX6Q/Apalis iMX8QM Server端运行下面命令
----------------------
$ iperf3 -s
----------------------
./ Apalis iMX6Q
----------------------
/* 100M带宽测试*/
$ iperf3 -c [IP of Apalis iMX6Q] -u -b 100M
-t 60 -i 10
…
[ ID] Interval Transfer Bandwidth Jitter
Lost/Total Datagrams
[
4] 0.00-60.00 sec
714 MBytes 99.9 Mbits/sec 0.110 ms
0/91424 (0%)
/* 400M带宽测试*/
$ iperf3 -c [IP of Apalis iMX6Q] -u -b 400M
-t 60 -i 10
…
[ ID] Interval Transfer
Bandwidth Jitter Lost/Total Datagrams
[
4] 0.00-60.00 sec
2.79 GBytes 400 Mbits/sec 0.098 ms
4374/365993 (1.2%)
/* 1000M带宽测试*/
$ iperf3 -c [IP of Apalis iMX6Q] -u -b
1000M -t 60 -i 10
…
[ ID] Interval Transfer Bandwidth Jitter
Lost/Total Datagrams
[
4] 0.00-60.00 sec
2.98 GBytes 426 Mbits/sec 0.167 ms
2304/390206 (0.59%)
----------------------
./ Apalis iMX8QM
----------------------
/* 100M带宽测试*/
$ iperf3 -c [IP of Apalis iMX8QM] -u -b
100M -t 60 -i 10
…
[ ID] Interval Transfer Bandwidth Jitter
Lost/Total Datagrams
[
4] 0.00-60.00 sec
714 MBytes 99.9 Mbits/sec 0.078 ms
84/91416 (0.092%)
/* 400M带宽测试*/
$ iperf3 -c [IP of Apalis iMX8QM] -u -b
400M -t 60 -i 10
…
[ ID] Interval Transfer Bandwidth Jitter
Lost/Total Datagrams
[
4] 0.00-60.00 sec
2.79 GBytes 400 Mbits/sec 0.092 ms
121/366076 (0.033%)
/* 1000M带宽测试*/
$ iperf3 -c [IP of Apalis iMX8QM] -u -b
1000M -t 60 -i 10
…
[ ID] Interval Transfer Bandwidth Jitter
Lost/Total Datagrams
[
4] 0.00-60.00 sec
6.63 GBytes 949 Mbits/sec 0.064 ms
284/868752 (0.033%)
----------------------
b). Apalis iMX6Q/Apalis iMX8QM作为Client端发送,Ubuntu PC作为Sever端接收测试
./ Ubuntu PC server端运行下面命令
----------------------
$ iperf3 -s
----------------------
./ Apalis iMX6Q Client端连接测试
----------------------
/* 100M带宽测试*/
root@apalis-imx6:~# iperf3 -c [IP of Ubuntu
PC] -u -b 100M -t 60 -i 10
…
[ ID] Interval Transfer Bitrate Jitter Lost/Total Datagrams
[
5] 0.00-60.00 sec
715 MBytes 100 Mbits/sec 0.000 ms
0/517952 (0%) sender
[
5] 0.00-60.00 sec
715 MBytes 100 Mbits/sec 0.005 ms
0/517952 (0%) receiver
/* 400M带宽测试*/
root@apalis-imx6:~# iperf3 -c [IP of Ubuntu
PC] -u -b 400M -t 60 -i 10
…
[ ID] Interval Transfer Bitrate Jitter Lost/Total Datagrams
[
5] 0.00-60.00 sec
1.91 GBytes 273 Mbits/sec 0.000 ms
0/1413705 (0%) sender
[
5] 0.00-60.00 sec
1.91 GBytes 273 Mbits/sec 0.021 ms
0/1413705 (0%) receiver
/* 1000M带宽测试*/
root@apalis-imx6:~# iperf3 -c [IP of Ubuntu
PC] -u -b 1000M -t 60 -i 10
…
[ ID] Interval Transfer Bitrate Jitter Lost/Total Datagrams
[
5] 0.00-60.00 sec
1.92 GBytes 274 Mbits/sec 0.000 ms
0/1421514 (0%) sender
[
5] 0.00-60.00 sec
1.92 GBytes 274 Mbits/sec 0.057 ms
0/1421509 (0%) receiver
----------------------
./ Apalis iMX8QM Client端连接测试
----------------------
/* 100M带宽测试*/
root@apalis-imx8:~# iperf3 -c [IP of Ubuntu
PC] -u -b 100M -t 60 -i 10
…
[ ID] Interval Transfer Bitrate Jitter Lost/Total Datagrams
[
5] 0.00-60.00 sec
715 MBytes 100 Mbits/sec 0.000 ms
0/517950 (0%) sender
[
5] 0.00-60.00 sec
715 MBytes 100 Mbits/sec 0.035 ms
0/517950 (0%) receiver
/* 400M带宽测试*/
root@apalis-imx8:~# iperf3 -c 10.20.1.126
-u -b 400M -t 60 -i 10
…
[ ID] Interval Transfer Bitrate Jitter Lost/Total Datagrams
[
5] 0.00-60.00 sec
2.79 GBytes 400 Mbits/sec 0.000 ms
0/2071798 (0%) sender
[
5] 0.00-60.00 sec
2.79 GBytes 400 Mbits/sec 0.026 ms
68/2071798 (0.0033%) receiver
/* 1000M带宽测试*/
root@apalis-imx8:~# iperf3 -c 10.20.1.126
-u -b 1000M -t 60 -i 10
…
[ ID] Interval Transfer Bitrate Jitter Lost/Total Datagrams
[
5] 0.00-60.00 sec
4.71 GBytes 674 Mbits/sec 0.000 ms
0/3489592 (0%) sender
[
5] 0.00-60.00 sec
4.71 GBytes 674 Mbits/sec 0.030 ms
103/3489586 (0.003%) receiver
----------------------
c).测试结果汇总
UDP发送测试
UDP接收测试
100M带宽
400M带宽
1000M带宽
100M带宽
400M带宽
1000M带宽
Apalis iMX6Q
100 Mb/s
273 Mb/s
274 Mb/s
99.9 Mb/s
400 Mb/s *
426 Mb/s *
Apalis iMX8QM
100 Mb/s
400 Mb/s
674 Mb/s
99.9 Mb/s
400 Mb/s
949 Mb/s
*注意此时丢包率已经到1%左右
5).总结
本文对比测试了NXP iMX6和NXP iMX8处理器的网络性能,对于iMX6,由于这个的限制,400Mb/s左右的性能也就把符合文档的描述,iMX8则在大多数情况下能够接近千兆带宽。