aboutgitcodebugslistschat
path: root/test/perf/passt_udp
diff options
context:
space:
mode:
authorDavid Gibson <david@gibson.dropbear.id.au>2023-11-06 18:08:28 +1100
committerStefano Brivio <sbrivio@redhat.com>2023-11-07 09:56:10 +0100
commite516809a74ffd495481a7adf6b565181861a41f9 (patch)
tree1b99cba3173477677b3b0e6ac203db673fca0cd2 /test/perf/passt_udp
parentf9ff6678d4bbf5d9c80c1c6f784c3955468c09d6 (diff)
downloadpasst-e516809a74ffd495481a7adf6b565181861a41f9.tar
passt-e516809a74ffd495481a7adf6b565181861a41f9.tar.gz
passt-e516809a74ffd495481a7adf6b565181861a41f9.tar.bz2
passt-e516809a74ffd495481a7adf6b565181861a41f9.tar.lz
passt-e516809a74ffd495481a7adf6b565181861a41f9.tar.xz
passt-e516809a74ffd495481a7adf6b565181861a41f9.tar.zst
passt-e516809a74ffd495481a7adf6b565181861a41f9.zip
test/perf: Start iperf3 server less often
Currently we start both the iperf3 server(s) and client(s) afresh each time we want to make a bandwidth measurement. That's not really necessary as usually a whole batch of bandwidth measurements can use the same server. Split up the iperf3 directive into 3 directives: iperf3s to start the server, iperf3 to make a measurement and iperf3k to kill the server, so that we can start the server less often. This - and more importantly, the reduced number of waits for the server to be ready - reduces runtime of the performance tests on my laptop by about 4m (out of ~28minutes). For now we still restart the server between IPv4 and IPv6 tests. That's because in some cases the latency measurements we make in between use the same ports. Signed-off-by: David Gibson <david@gibson.dropbear.id.au> Signed-off-by: Stefano Brivio <sbrivio@redhat.com>
Diffstat (limited to 'test/perf/passt_udp')
-rw-r--r--test/perf/passt_udp57
1 files changed, 36 insertions, 21 deletions
diff --git a/test/perf/passt_udp b/test/perf/passt_udp
index a117b6a..12d8fbb 100644
--- a/test/perf/passt_udp
+++ b/test/perf/passt_udp
@@ -41,23 +41,26 @@ report passt udp __THREADS__ __FREQ__
th MTU 256B 576B 1280B 1500B 9000B 65520B
-
tr UDP throughput over IPv6: guest to host
+iperf3s ns 100${i}2 __THREADS__
+
bw -
bw -
guest ip link set dev __IFNAME__ mtu 1280
-iperf3 BW guest ns __GW6__%__IFNAME__ 100${i}2 __THREADS__ __TIME__ __OPTS__ -b 2G
+iperf3 BW guest __GW6__%__IFNAME__ 100${i}2 __THREADS__ __TIME__ __OPTS__ -b 2G
bw __BW__ 0.8 1.2
guest ip link set dev __IFNAME__ mtu 1500
-iperf3 BW guest ns __GW6__%__IFNAME__ 100${i}2 __THREADS__ __TIME__ __OPTS__ -b 3G
+iperf3 BW guest __GW6__%__IFNAME__ 100${i}2 __THREADS__ __TIME__ __OPTS__ -b 3G
bw __BW__ 1.0 1.5
guest ip link set dev __IFNAME__ mtu 9000
-iperf3 BW guest ns __GW6__%__IFNAME__ 100${i}2 __THREADS__ __TIME__ __OPTS__ -b 5G
+iperf3 BW guest __GW6__%__IFNAME__ 100${i}2 __THREADS__ __TIME__ __OPTS__ -b 5G
bw __BW__ 4.0 5.0
guest ip link set dev __IFNAME__ mtu 65520
-iperf3 BW guest ns __GW6__%__IFNAME__ 100${i}2 __THREADS__ __TIME__ __OPTS__ -b 7G
+iperf3 BW guest __GW6__%__IFNAME__ 100${i}2 __THREADS__ __TIME__ __OPTS__ -b 7G
bw __BW__ 4.0 5.0
+iperf3k ns
+
tl UDP RR latency over IPv6: guest to host
lat -
lat -
@@ -70,25 +73,29 @@ lat __LAT__ 200 150
tr UDP throughput over IPv4: guest to host
+iperf3s ns 100${i}2 __THREADS__
+
guest ip link set dev __IFNAME__ mtu 256
-iperf3 BW guest ns __GW__ 100${i}2 __THREADS__ __TIME__ __OPTS__ -b 500M
+iperf3 BW guest __GW__ 100${i}2 __THREADS__ __TIME__ __OPTS__ -b 500M
bw __BW__ 0.0 0.0
guest ip link set dev __IFNAME__ mtu 576
-iperf3 BW guest ns __GW__ 100${i}2 __THREADS__ __TIME__ __OPTS__ -b 1G
+iperf3 BW guest __GW__ 100${i}2 __THREADS__ __TIME__ __OPTS__ -b 1G
bw __BW__ 0.4 0.6
guest ip link set dev __IFNAME__ mtu 1280
-iperf3 BW guest ns __GW__ 100${i}2 __THREADS__ __TIME__ __OPTS__ -b 2G
+iperf3 BW guest __GW__ 100${i}2 __THREADS__ __TIME__ __OPTS__ -b 2G
bw __BW__ 0.8 1.2
guest ip link set dev __IFNAME__ mtu 1500
-iperf3 BW guest ns __GW__ 100${i}2 __THREADS__ __TIME__ __OPTS__ -b 3G
+iperf3 BW guest __GW__ 100${i}2 __THREADS__ __TIME__ __OPTS__ -b 3G
bw __BW__ 1.0 1.5
guest ip link set dev __IFNAME__ mtu 9000
-iperf3 BW guest ns __GW__ 100${i}2 __THREADS__ __TIME__ __OPTS__ -b 6G
+iperf3 BW guest __GW__ 100${i}2 __THREADS__ __TIME__ __OPTS__ -b 6G
bw __BW__ 4.0 5.0
guest ip link set dev __IFNAME__ mtu 65520
-iperf3 BW guest ns __GW__ 100${i}2 __THREADS__ __TIME__ __OPTS__ -b 7G
+iperf3 BW guest __GW__ 100${i}2 __THREADS__ __TIME__ __OPTS__ -b 7G
bw __BW__ 4.0 5.0
+iperf3k ns
+
tl UDP RR latency over IPv4: guest to host
lat -
lat -
@@ -101,21 +108,25 @@ lat __LAT__ 200 150
tr UDP throughput over IPv6: host to guest
+iperf3s guest 100${i}1 __THREADS__
+
bw -
bw -
ns ip link set dev lo mtu 1280
-iperf3 BW ns guest ::1 100${i}1 __THREADS__ __TIME__ __OPTS__ -b 2G
+iperf3 BW ns ::1 100${i}1 __THREADS__ __TIME__ __OPTS__ -b 2G
bw __BW__ 0.8 1.2
ns ip link set dev lo mtu 1500
-iperf3 BW ns guest ::1 100${i}1 __THREADS__ __TIME__ __OPTS__ -b 2G
+iperf3 BW ns ::1 100${i}1 __THREADS__ __TIME__ __OPTS__ -b 2G
bw __BW__ 1.0 1.5
ns ip link set dev lo mtu 9000
-iperf3 BW ns guest ::1 100${i}1 __THREADS__ __TIME__ __OPTS__ -b 3G
+iperf3 BW ns ::1 100${i}1 __THREADS__ __TIME__ __OPTS__ -b 3G
bw __BW__ 3.0 4.0
ns ip link set dev lo mtu 65520
-iperf3 BW ns guest ::1 100${i}1 __THREADS__ __TIME__ __OPTS__ -b 3G
+iperf3 BW ns ::1 100${i}1 __THREADS__ __TIME__ __OPTS__ -b 3G
bw __BW__ 3.0 4.0
+iperf3k guest
+
tl UDP RR latency over IPv6: host to guest
lat -
lat -
@@ -130,26 +141,30 @@ ns ip link set dev lo mtu 65535
tr UDP throughput over IPv4: host to guest
+iperf3s guest 100${i}1 __THREADS__
+
ns ip link set dev lo mtu 256
-iperf3 BW ns guest 127.0.0.1 100${i}1 __THREADS__ __TIME__ __OPTS__ -b 1G
+iperf3 BW ns 127.0.0.1 100${i}1 __THREADS__ __TIME__ __OPTS__ -b 1G
bw __BW__ 0.0 0.0
ns ip link set dev lo mtu 576
-iperf3 BW ns guest 127.0.0.1 100${i}1 __THREADS__ __TIME__ __OPTS__ -b 1G
+iperf3 BW ns 127.0.0.1 100${i}1 __THREADS__ __TIME__ __OPTS__ -b 1G
bw __BW__ 0.4 0.6
ns ip link set dev lo mtu 1280
ns ip addr add ::1 dev lo
-iperf3 BW ns guest 127.0.0.1 100${i}1 __THREADS__ __TIME__ __OPTS__ -b 3G
+iperf3 BW ns 127.0.0.1 100${i}1 __THREADS__ __TIME__ __OPTS__ -b 3G
bw __BW__ 0.8 1.2
ns ip link set dev lo mtu 1500
-iperf3 BW ns guest 127.0.0.1 100${i}1 __THREADS__ __TIME__ __OPTS__ -b 3G
+iperf3 BW ns 127.0.0.1 100${i}1 __THREADS__ __TIME__ __OPTS__ -b 3G
bw __BW__ 1.0 1.5
ns ip link set dev lo mtu 9000
-iperf3 BW ns guest 127.0.0.1 100${i}1 __THREADS__ __TIME__ __OPTS__ -b 3G
+iperf3 BW ns 127.0.0.1 100${i}1 __THREADS__ __TIME__ __OPTS__ -b 3G
bw __BW__ 3.0 4.0
ns ip link set dev lo mtu 65520
-iperf3 BW ns guest 127.0.0.1 100${i}1 __THREADS__ __TIME__ __OPTS__ -b 3G
+iperf3 BW ns 127.0.0.1 100${i}1 __THREADS__ __TIME__ __OPTS__ -b 3G
bw __BW__ 3.0 4.0
+iperf3k guest
+
tl UDP RR latency over IPv4: host to guest
lat -
lat -