-
Notifications
You must be signed in to change notification settings - Fork 275
iPerf Benchmark
You can use iperf to benchmark the TCP and UDP functionality of the network stack.
Coming soon.
Assuming the default configuration the IP address of the FPGA is 10.1.212.209. On how to change the IP address of the FPGA look here.
Make sure the IP address of your testing machine is in the same subnet as the FPGA, e.g. 10.1.212.*
On the testing machine:
Download iperf 2.0.10 (you have to use this version):
wget https://netcologne.dl.sourceforge.net/project/iperf2/iperf-2.0.10.tar.gz
Unpack it:
tar xvf iperf-2.0.10.tar.gz
cd iperf-2.0.10
mkdir build && cd build
../configure
make
cd src
Load the bitstream to the FPGA.
Then on the testing machine run:
ping 10.1.212.209
You should receive ping messages from the fpga.
Then on the testing machine run:
./iperf -u -B 10.10.1.1 -s
On the FPGA board press one of the following buttons:
- south: for a bandwidth of 1Gbps
- center: for a bandwidth of 5Gbps
- north: for a bandwdith of 10Gbps
Below some example measurements using two different machines. As you can see the machine is not capable to consume the data fast enough and since this runs over UDP some of the packets are dropped.
Bandwidth on a desktop machine with Intel i7-2700K @ 3.5GHz and Solarflare Communications SFC9020 NIC
The 3 measurements are button south, center, and north.
------------------------------------------------------------
Server listening on UDP port 5001
Binding to local address 11.1.212.73
Receiving 1470 byte datagrams
UDP buffer size: 208 KByte (default)
------------------------------------------------------------
[ 3] local 11.1.212.73 port 5001 connected with 11.1.212.209 port 32768
[ ID] Interval Transfer Bandwidth Jitter Lost/Total Datagrams
[ 3] 0.0- 5.0 sec 595 MBytes 999 Mbits/sec 0.011 ms 159/446175 (0.036%)
[ 4] local 11.1.212.73 port 5001 connected with 11.1.212.209 port 32768
[ 4] 0.0- 5.0 sec 1.26 GBytes 2.17 Gbits/sec 0.005 ms 1257261/2225784 (56%)
[ 3] local 11.1.212.73 port 5001 connected with 11.1.212.209 port 32768
[ 3] 0.0- 5.0 sec 4.16 GBytes 7.15 Gbits/sec 0.002 ms 1066509/4257499 (25%)
Bandwidth on a server machine with Intel Xeon E5-2630 @ 2.4GHz and Intel Corporation 82599ES 10-Gigabit NIC
The 3 measurements are button north (10Gbps)
------------------------------------------------------------
Server listening on UDP port 5001
Binding to local address 10.1.212.73
Receiving 1470 byte datagrams
UDP buffer size: 208 KByte (default)
------------------------------------------------------------
[ 3] local 10.1.212.73 port 5001 connected with 10.1.212.209 port 32768
[ ID] Interval Transfer Bandwidth Jitter Lost/Total Datagrams
[ 3] 0.0- 5.0 sec 4.62 GBytes 7.94 Gbits/sec 0.001 ms 711546/4257499 (17%)
[ 4] local 10.1.212.73 port 5001 connected with 10.1.212.209 port 32768
[ 4] 0.0- 5.0 sec 4.61 GBytes 7.92 Gbits/sec 0.001 ms 719363/4257499 (17%)
[ 3] local 10.1.212.73 port 5001 connected with 10.1.212.209 port 32768
[ 3] 0.0- 5.0 sec 4.60 GBytes 7.91 Gbits/sec 0.001 ms 727015/4257499 (17%)