public inbox for passt-dev@passt.top
 help / color / mirror / code / Atom feed
* [PATCH] test: Speed up by cutting on eye candy and performance test duration
@ 2024-08-14 22:54 Stefano Brivio
  2024-08-15  3:43 ` David Gibson
  0 siblings, 1 reply; 2+ messages in thread
From: Stefano Brivio @ 2024-08-14 22:54 UTC (permalink / raw)
  To: passt-dev

We have a number of delays when we switch to new layouts that were
added to make the tests visually easier to follow, together with
blinking status bars. Shorten the delays and avoid blinking the
status bar if $FAST is set to 1 (no demo mode).

Shorten delays in busy loops to 10ms, instead of 100ms, and skip the
one-second fixed delay when we wait for the status of a command.

Cut the duration of throughput and latency tests to one second, down
from ten. Somewhat surprisingly, the results we get are rather
consistent, and not significantly different from what we'd get with
10 seconds.

This, together with Podman's commit 20f3e8909e3a ("test/system:
pasta_test_do add explicit port check"), cuts the time needed on my
setup for full test run from approximately 37 minutes to...:

  $ time ./run
  [exited]
  PASS: 165, FAIL: 0
  Log at /home/sbrivio/passt/test/test_logs/test.log

  real	15m34.253s
  user	0m0.011s
  sys	0m0.011s

Signed-off-by: Stefano Brivio <sbrivio@redhat.com>
---
 test/lib/layout                | 14 +++++++-------
 test/lib/term                  | 31 +++++++++++++++----------------
 test/lib/test                  |  2 +-
 test/pasta_options/log_to_file |  4 ++--
 test/perf/passt_tcp            | 18 +++++++++---------
 test/perf/passt_udp            |  2 +-
 test/perf/pasta_tcp            | 34 +++++++++++++++++-----------------
 test/perf/pasta_udp            |  2 +-
 8 files changed, 53 insertions(+), 54 deletions(-)

diff --git a/test/lib/layout b/test/lib/layout
index f9a1cf1..4d03572 100644
--- a/test/lib/layout
+++ b/test/lib/layout
@@ -15,7 +15,7 @@
 
 # layout_pasta() - Panes for host, pasta, and separate one for namespace
 layout_pasta() {
-	sleep 3
+	sleep 1
 
 	tmux kill-pane -a -t 0
 	cmd_write 0 clear
@@ -46,7 +46,7 @@ layout_pasta() {
 
 # layout_passt() - Panes for host, passt, and guest
 layout_passt() {
-	sleep 3
+	sleep 1
 
 	tmux kill-pane -a -t 0
 	cmd_write 0 clear
@@ -77,7 +77,7 @@ layout_passt() {
 
 # layout_passt_in_pasta() - Host, passt within pasta, namespace and guest
 layout_passt_in_pasta() {
-	sleep 3
+	sleep 1
 
 	tmux kill-pane -a -t 0
 	cmd_write 0 clear
@@ -113,7 +113,7 @@ layout_passt_in_pasta() {
 
 # layout_two_guests() - Two guest panes, two passt panes, plus host and log
 layout_two_guests() {
-	sleep 3
+	sleep 1
 
 	tmux kill-pane -a -t 0
 	cmd_write 0 clear
@@ -152,7 +152,7 @@ layout_two_guests() {
 
 # layout_demo_pasta() - Four panes for pasta demo
 layout_demo_pasta() {
-	sleep 3
+	sleep 1
 
 	cmd_write 0 cd ${BASEPATH}
 	cmd_write 0 clear
@@ -188,7 +188,7 @@ layout_demo_pasta() {
 
 # layout_demo_passt() - Four panes for passt demo
 layout_demo_passt() {
-	sleep 3
+	sleep 1
 
 	cmd_write 0 cd ${BASEPATH}
 	cmd_write 0 clear
@@ -224,7 +224,7 @@ layout_demo_passt() {
 
 # layout_demo_podman() - Four panes for pasta demo with Podman
 layout_demo_podman() {
-	sleep 3
+	sleep 1
 
 	cmd_write 0 cd ${BASEPATH}
 	cmd_write 0 clear
diff --git a/test/lib/term b/test/lib/term
index 262937e..3834092 100755
--- a/test/lib/term
+++ b/test/lib/term
@@ -97,7 +97,6 @@ display_delay() {
 switch_pane() {
 	tmux select-pane -t ${1}
 	PR_DELAY=${PR_DELAY_INIT}
-	display_delay "0.2"
 }
 
 # cmd_write() - Write a command to a pane, letter by letter, and execute it
@@ -199,7 +198,7 @@ pane_run() {
 # $1:	Pane name
 pane_wait() {
 	__lc="$(echo "${1}" | tr [A-Z] [a-z])"
-	sleep 0.1 || sleep 1
+	sleep 0.01 || sleep 1
 
 	__done=0
 	while
@@ -207,7 +206,7 @@ pane_wait() {
 		case ${__l} in
 		*"$ " | *"# ") return ;;
 		esac
-	do sleep 0.1 || sleep 1; done
+	do sleep 0.01 || sleep 1; done
 }
 
 # pane_parse() - Print last line, @EMPTY@ if command had no output
@@ -231,7 +230,7 @@ pane_status() {
 
 	__status="$(pane_parse "${1}")"
 	while ! [ "${__status}" -eq "${__status}" ] 2>/dev/null; do
-		sleep 1
+		sleep 0.01 || sleep 1
 		pane_run "${1}" 'echo $?'
 		pane_wait "${1}"
 		__status="$(pane_parse "${1}")"
@@ -383,6 +382,16 @@ info_check_failed() {
 	printf " < failed.\n" >> "${LOGFILE}"
 }
 
+# status_bar_blink() - Make status bar blink
+status_bar_blink() {
+	for i in `seq 1 3`; do
+		tmux set status-right-style 'bg=colour1 fg=colour196 bold'
+		sleep 0.1 || sleep 1
+		tmux set status-right-style 'bg=colour1 fg=colour233 bold'
+		sleep 0.1 || sleep 1
+	done
+}
+
 # info_passed() - Display, log, and make status bar blink when a test passes
 info_passed() {
 	switch_pane ${PANE_INFO}
@@ -391,12 +400,7 @@ info_passed() {
 	log "...passed."
 	log
 
-	for i in `seq 1 3`; do
-		tmux set status-right-style 'bg=colour1 fg=colour2 bold'
-		sleep "0.1"
-		tmux set status-right-style 'bg=colour1 fg=colour233 bold'
-		sleep "0.1"
-	done
+	[ ${FAST} -eq 1 ] || status_bar_blink
 }
 
 # info_failed() - Display, log, and make status bar blink when a test passes
@@ -407,12 +411,7 @@ info_failed() {
 	log "...failed."
 	log
 
-	for i in `seq 1 3`; do
-		tmux set status-right-style 'bg=colour1 fg=colour196 bold'
-		sleep "0.1"
-		tmux set status-right-style 'bg=colour1 fg=colour233 bold'
-		sleep "0.1"
-	done
+	[ ${FAST} -eq 1 ] || status_bar_blink
 
 	pause_continue \
 		"Press any key to pause test session"		\
diff --git a/test/lib/test b/test/lib/test
index c525f8e..e6726be 100755
--- a/test/lib/test
+++ b/test/lib/test
@@ -33,7 +33,7 @@ test_iperf3k() {
 
 	pane_or_context_run "${__sctx}" 'kill -INT $(cat s.pid); rm s.pid'
 
-	sleep 3		# Wait for kernel to free up ports
+	sleep 1		# Wait for kernel to free up ports
 }
 
 # test_iperf3() - Ugly helper for iperf3 directive
diff --git a/test/pasta_options/log_to_file b/test/pasta_options/log_to_file
index fe50e50..3ead06c 100644
--- a/test/pasta_options/log_to_file
+++ b/test/pasta_options/log_to_file
@@ -19,7 +19,7 @@ sleep	1
 endef
 
 def	flood_log_client
-host	tcp_crr --nolog -P 10001 -C 10002 -6 -c -H ::1
+host	tcp_crr --nolog -l1 -P 10001 -C 10002 -6 -c -H ::1
 endef
 
 def	check_log_size_mountns
@@ -42,7 +42,7 @@ pout	PID2 echo $!
 check	head -1 __LOG_FILE__ | grep '^pasta .* [(]__PID2__[)]$'
 
 test	Maximum log size
-passtb	./pasta --config-net -d -f -l __LOG_FILE__ --log-size $((100 * 1024)) -- sh -c 'while true; do tcp_crr --nolog -P 10001 -C 10002 -6; done'
+passtb	./pasta --config-net -d -f -l __LOG_FILE__ --log-size $((100 * 1024)) -- sh -c 'while true; do tcp_crr --nolog -l1 -P 10001 -C 10002 -6; done'
 sleep	1
 
 flood_log_client
diff --git a/test/perf/passt_tcp b/test/perf/passt_tcp
index 14343cb..695479f 100644
--- a/test/perf/passt_tcp
+++ b/test/perf/passt_tcp
@@ -38,7 +38,7 @@ hout	FREQ_CPUFREQ (echo "scale=1"; printf '( %i + 10^5 / 2 ) / 10^6\n' $(cat /sy
 hout	FREQ [ -n "__FREQ_CPUFREQ__" ] && echo __FREQ_CPUFREQ__ || echo __FREQ_PROCFS__
 
 set	THREADS 4
-set	TIME 10
+set	TIME 1
 set	OMIT 0.1
 set	OPTS -Z -P __THREADS__ -l 1M -O__OMIT__
 
@@ -75,7 +75,7 @@ lat	-
 lat	-
 lat	-
 nsb	tcp_rr --nolog -6
-gout	LAT tcp_rr --nolog -6 -c -H __GW6__%__IFNAME__ | sed -n 's/^throughput=\(.*\)/\1/p'
+gout	LAT tcp_rr --nolog -l1 -6 -c -H __GW6__%__IFNAME__ | sed -n 's/^throughput=\(.*\)/\1/p'
 lat	__LAT__ 200 150
 
 tl	TCP CRR latency over IPv6: guest to host
@@ -85,7 +85,7 @@ lat	-
 lat	-
 lat	-
 nsb	tcp_crr --nolog -6
-gout	LAT tcp_crr --nolog -6 -c -H __GW6__%__IFNAME__ | sed -n 's/^throughput=\(.*\)/\1/p'
+gout	LAT tcp_crr --nolog -l1 -6 -c -H __GW6__%__IFNAME__ | sed -n 's/^throughput=\(.*\)/\1/p'
 lat	__LAT__ 500 400
 
 tr	TCP throughput over IPv4: guest to host
@@ -119,7 +119,7 @@ lat	-
 lat	-
 lat	-
 nsb	tcp_rr --nolog -4
-gout	LAT tcp_rr --nolog -4 -c -H __GW__ | sed -n 's/^throughput=\(.*\)/\1/p'
+gout	LAT tcp_rr --nolog -l1 -4 -c -H __GW__ | sed -n 's/^throughput=\(.*\)/\1/p'
 lat	__LAT__ 200 150
 
 tl	TCP CRR latency over IPv4: guest to host
@@ -129,7 +129,7 @@ lat	-
 lat	-
 lat	-
 nsb	tcp_crr --nolog -4
-gout	LAT tcp_crr --nolog -4 -c -H __GW__ | sed -n 's/^throughput=\(.*\)/\1/p'
+gout	LAT tcp_crr --nolog -l1 -4 -c -H __GW__ | sed -n 's/^throughput=\(.*\)/\1/p'
 lat	__LAT__ 500 400
 
 tr	TCP throughput over IPv6: host to guest
@@ -153,7 +153,7 @@ lat	-
 lat	-
 guestb	tcp_rr --nolog -P 10001 -C 10011 -6
 sleep	1
-nsout	LAT tcp_rr --nolog -P 10001 -C 10011 -6 -c -H ::1 | sed -n 's/^throughput=\(.*\)/\1/p'
+nsout	LAT tcp_rr --nolog -l1 -P 10001 -C 10011 -6 -c -H ::1 | sed -n 's/^throughput=\(.*\)/\1/p'
 lat	__LAT__ 200 150
 
 tl	TCP CRR latency over IPv6: host to guest
@@ -164,7 +164,7 @@ lat	-
 lat	-
 guestb	tcp_crr --nolog -P 10001 -C 10011 -6
 sleep	1
-nsout	LAT tcp_crr --nolog -P 10001 -C 10011 -6 -c -H ::1 | sed -n 's/^throughput=\(.*\)/\1/p'
+nsout	LAT tcp_crr --nolog -l1 -P 10001 -C 10011 -6 -c -H ::1 | sed -n 's/^throughput=\(.*\)/\1/p'
 lat	__LAT__ 500 350
 
 
@@ -189,7 +189,7 @@ lat	-
 lat	-
 guestb	tcp_rr --nolog -P 10001 -C 10011 -4
 sleep	1
-nsout	LAT tcp_rr --nolog -P 10001 -C 10011 -4 -c -H 127.0.0.1 | sed -n 's/^throughput=\(.*\)/\1/p'
+nsout	LAT tcp_rr --nolog -l1 -P 10001 -C 10011 -4 -c -H 127.0.0.1 | sed -n 's/^throughput=\(.*\)/\1/p'
 lat	__LAT__ 200 150
 
 tl	TCP CRR latency over IPv6: host to guest
@@ -200,7 +200,7 @@ lat	-
 lat	-
 guestb	tcp_crr --nolog -P 10001 -C 10011 -4
 sleep	1
-nsout	LAT tcp_crr --nolog -P 10001 -C 10011 -4 -c -H 127.0.0.1 | sed -n 's/^throughput=\(.*\)/\1/p'
+nsout	LAT tcp_crr --nolog -l1 -P 10001 -C 10011 -4 -c -H 127.0.0.1 | sed -n 's/^throughput=\(.*\)/\1/p'
 lat	__LAT__ 500 300
 
 te
diff --git a/test/perf/passt_udp b/test/perf/passt_udp
index 8919280..f25c903 100644
--- a/test/perf/passt_udp
+++ b/test/perf/passt_udp
@@ -31,7 +31,7 @@ hout	FREQ_CPUFREQ (echo "scale=1"; printf '( %i + 10^5 / 2 ) / 10^6\n' $(cat /sy
 hout	FREQ [ -n "__FREQ_CPUFREQ__" ] && echo __FREQ_CPUFREQ__ || echo __FREQ_PROCFS__
 
 set	THREADS 2
-set	TIME 10
+set	TIME 1
 set	OPTS -u -P __THREADS__ --pacing-timer 1000
 
 info	Throughput in Gbps, latency in µs, __THREADS__ threads at __FREQ__ GHz
diff --git a/test/perf/pasta_tcp b/test/perf/pasta_tcp
index 8d2f911..a443f5a 100644
--- a/test/perf/pasta_tcp
+++ b/test/perf/pasta_tcp
@@ -22,7 +22,7 @@ ns	/sbin/sysctl -w net.ipv4.tcp_timestamps=0
 
 
 set	THREADS 4
-set	TIME 10
+set	TIME 1
 set	OMIT 0.1
 set	OPTS -Z -w 4M -l 1M -P __THREADS__ -O__OMIT__
 
@@ -46,13 +46,13 @@ iperf3k	host
 
 tl	TCP RR latency over IPv6: ns to host
 hostb	tcp_rr --nolog -P 10003 -C 10013 -6
-nsout	LAT tcp_rr --nolog -P 10003 -C 10013 -6 -c -H ::1 | sed -n 's/^throughput=\(.*\)/\1/p'
+nsout	LAT tcp_rr --nolog -l1 -P 10003 -C 10013 -6 -c -H ::1 | sed -n 's/^throughput=\(.*\)/\1/p'
 hostw
 lat	__LAT__ 150 100
 
 tl	TCP CRR latency over IPv6: ns to host
 hostb	tcp_crr --nolog -P 10003 -C 10013 -6
-nsout	LAT tcp_crr --nolog -P 10003 -C 10013 -6 -c -H ::1 | sed -n 's/^throughput=\(.*\)/\1/p'
+nsout	LAT tcp_crr --nolog -l1 -P 10003 -C 10013 -6 -c -H ::1 | sed -n 's/^throughput=\(.*\)/\1/p'
 hostw
 lat	__LAT__ 500 350
 
@@ -67,13 +67,13 @@ iperf3k	host
 
 tl	TCP RR latency over IPv4: ns to host
 hostb	tcp_rr --nolog -P 10003 -C 10013 -4
-nsout	LAT tcp_rr --nolog -P 10003 -C 10013 -4 -c -H 127.0.0.1 | sed -n 's/^throughput=\(.*\)/\1/p'
+nsout	LAT tcp_rr --nolog -l1 -P 10003 -C 10013 -4 -c -H 127.0.0.1 | sed -n 's/^throughput=\(.*\)/\1/p'
 hostw
 lat	__LAT__ 150 100
 
 tl	TCP CRR latency over IPv4: ns to host
 hostb	tcp_crr --nolog -P 10003 -C 10013 -4
-nsout	LAT tcp_crr --nolog -P 10003 -C 10013 -4 -c -H 127.0.0.1 | sed -n 's/^throughput=\(.*\)/\1/p'
+nsout	LAT tcp_crr --nolog -l1 -P 10003 -C 10013 -4 -c -H 127.0.0.1 | sed -n 's/^throughput=\(.*\)/\1/p'
 hostw
 lat	__LAT__ 500 350
 
@@ -87,13 +87,13 @@ iperf3k	ns
 
 tl	TCP RR latency over IPv6: host to ns
 nsb	tcp_rr --nolog -P 10002 -C 10012 -6
-hout	LAT tcp_rr --nolog -P 10002 -C 10012 -6 -c -H ::1 | sed -n 's/^throughput=\(.*\)/\1/p'
+hout	LAT tcp_rr --nolog -l1 -P 10002 -C 10012 -6 -c -H ::1 | sed -n 's/^throughput=\(.*\)/\1/p'
 nsw
 lat	__LAT__ 150 100
 
 tl	TCP CRR latency over IPv6: host to ns
 nsb	tcp_crr --nolog -P 10002 -C 10012 -6
-hout	LAT tcp_crr --nolog -P 10002 -C 10012 -6 -c -H ::1 | sed -n 's/^throughput=\(.*\)/\1/p'
+hout	LAT tcp_crr --nolog -l1 -P 10002 -C 10012 -6 -c -H ::1 | sed -n 's/^throughput=\(.*\)/\1/p'
 nsw
 lat	__LAT__ 1000 700
 
@@ -108,13 +108,13 @@ iperf3k	ns
 
 tl	TCP RR latency over IPv4: host to ns
 nsb	tcp_rr --nolog -P 10002 -C 10012 -4
-hout	LAT tcp_rr --nolog -P 10002 -C 10012 -4 -c -H 127.0.0.1 | sed -n 's/^throughput=\(.*\)/\1/p'
+hout	LAT tcp_rr --nolog -l1 -P 10002 -C 10012 -4 -c -H 127.0.0.1 | sed -n 's/^throughput=\(.*\)/\1/p'
 nsw
 lat	__LAT__ 150 100
 
 tl	TCP CRR latency over IPv4: host to ns
 nsb	tcp_crr --nolog -P 10002 -C 10012 -4
-hout	LAT tcp_crr --nolog -P 10002 -C 10012 -4 -c -H 127.0.0.1 | sed -n 's/^throughput=\(.*\)/\1/p'
+hout	LAT tcp_crr --nolog -l1 -P 10002 -C 10012 -4 -c -H 127.0.0.1 | sed -n 's/^throughput=\(.*\)/\1/p'
 nsw
 lat	__LAT__ 1000 700
 
@@ -156,7 +156,7 @@ lat	-
 lat	-
 lat	-
 hostb	tcp_rr --nolog -P 10003 -C 10013 -6
-nsout	LAT tcp_rr --nolog -P 10003 -C 10013 -6 -c -H __GW6__%__IFNAME__ | sed -n 's/^throughput=\(.*\)/\1/p'
+nsout	LAT tcp_rr --nolog -l1 -P 10003 -C 10013 -6 -c -H __GW6__%__IFNAME__ | sed -n 's/^throughput=\(.*\)/\1/p'
 hostw
 lat	__LAT__ 150 100
 
@@ -165,7 +165,7 @@ lat	-
 lat	-
 lat	-
 hostb	tcp_crr --nolog -P 10003 -C 10013 -6
-nsout	LAT tcp_crr --nolog -P 10003 -C 10013 -6 -c -H __GW6__%__IFNAME__ | sed -n 's/^throughput=\(.*\)/\1/p'
+nsout	LAT tcp_crr --nolog -l1 -P 10003 -C 10013 -6 -c -H __GW6__%__IFNAME__ | sed -n 's/^throughput=\(.*\)/\1/p'
 hostw
 lat	__LAT__ 1500 500
 
@@ -193,7 +193,7 @@ lat	-
 lat	-
 lat	-
 hostb	tcp_rr --nolog -P 10003 -C 10013 -4
-nsout	LAT tcp_rr --nolog -P 10003 -C 10013 -4 -c -H __GW__ | sed -n 's/^throughput=\(.*\)/\1/p'
+nsout	LAT tcp_rr --nolog -l1 -P 10003 -C 10013 -4 -c -H __GW__ | sed -n 's/^throughput=\(.*\)/\1/p'
 hostw
 lat	__LAT__ 150 100
 
@@ -202,7 +202,7 @@ lat	-
 lat	-
 lat	-
 hostb	tcp_crr --nolog -P 10003 -C 10013 -4
-nsout	LAT tcp_crr --nolog -P 10003 -C 10013 -4 -c -H __GW__ | sed -n 's/^throughput=\(.*\)/\1/p'
+nsout	LAT tcp_crr --nolog -l1 -P 10003 -C 10013 -4 -c -H __GW__ | sed -n 's/^throughput=\(.*\)/\1/p'
 hostw
 lat	__LAT__ 1500 500
 
@@ -224,7 +224,7 @@ lat	-
 lat	-
 lat	-
 nsb	tcp_rr --nolog -P 10002 -C 10012 -6
-hout	LAT tcp_rr --nolog -P 10002 -C 10012 -6 -c -H __ADDR6__ | sed -n 's/^throughput=\(.*\)/\1/p'
+hout	LAT tcp_rr --nolog -l1 -P 10002 -C 10012 -6 -c -H __ADDR6__ | sed -n 's/^throughput=\(.*\)/\1/p'
 nsw
 lat	__LAT__ 150 100
 
@@ -234,7 +234,7 @@ lat	-
 lat	-
 sleep	1
 nsb	tcp_crr --nolog -P 10002 -C 10012 -6
-hout	LAT tcp_crr --nolog -P 10002 -C 10012 -6 -c -H __ADDR6__ | sed -n 's/^throughput=\(.*\)/\1/p'
+hout	LAT tcp_crr --nolog -l1 -P 10002 -C 10012 -6 -c -H __ADDR6__ | sed -n 's/^throughput=\(.*\)/\1/p'
 nsw
 lat	__LAT__ 5000 10000
 
@@ -256,7 +256,7 @@ lat	-
 lat	-
 lat	-
 nsb	tcp_rr --nolog -P 10002 -C 10012 -4
-hout	LAT tcp_rr --nolog -P 10002 -C 10012 -4 -c -H __ADDR__ | sed -n 's/^throughput=\(.*\)/\1/p'
+hout	LAT tcp_rr --nolog -l1 -P 10002 -C 10012 -4 -c -H __ADDR__ | sed -n 's/^throughput=\(.*\)/\1/p'
 nsw
 lat	__LAT__ 150 100
 
@@ -266,7 +266,7 @@ lat	-
 lat	-
 sleep	1
 nsb	tcp_crr --nolog -P 10002 -C 10012 -4
-hout	LAT tcp_crr --nolog -P 10002 -C 10012 -4 -c -H __ADDR__ | sed -n 's/^throughput=\(.*\)/\1/p'
+hout	LAT tcp_crr --nolog -l1 -P 10002 -C 10012 -4 -c -H __ADDR__ | sed -n 's/^throughput=\(.*\)/\1/p'
 nsw
 lat	__LAT__ 5000 10000
 
diff --git a/test/perf/pasta_udp b/test/perf/pasta_udp
index 6acbfd3..9fed62e 100644
--- a/test/perf/pasta_udp
+++ b/test/perf/pasta_udp
@@ -21,7 +21,7 @@ hout	FREQ_CPUFREQ (echo "scale=1"; printf '( %i + 10^5 / 2 ) / 10^6\n' $(cat /sy
 hout	FREQ [ -n "__FREQ_CPUFREQ__" ] && echo __FREQ_CPUFREQ__ || echo __FREQ_PROCFS__
 
 set	THREADS 1
-set	TIME 10
+set	TIME 1
 set	OPTS -u -P __THREADS__
 
 info	Throughput in Gbps, latency in µs, one thread at __FREQ__ GHz
-- 
@@ -21,7 +21,7 @@ hout	FREQ_CPUFREQ (echo "scale=1"; printf '( %i + 10^5 / 2 ) / 10^6\n' $(cat /sy
 hout	FREQ [ -n "__FREQ_CPUFREQ__" ] && echo __FREQ_CPUFREQ__ || echo __FREQ_PROCFS__
 
 set	THREADS 1
-set	TIME 10
+set	TIME 1
 set	OPTS -u -P __THREADS__
 
 info	Throughput in Gbps, latency in µs, one thread at __FREQ__ GHz
-- 
2.43.0


^ permalink raw reply related	[flat|nested] 2+ messages in thread

* Re: [PATCH] test: Speed up by cutting on eye candy and performance test duration
  2024-08-14 22:54 [PATCH] test: Speed up by cutting on eye candy and performance test duration Stefano Brivio
@ 2024-08-15  3:43 ` David Gibson
  0 siblings, 0 replies; 2+ messages in thread
From: David Gibson @ 2024-08-15  3:43 UTC (permalink / raw)
  To: Stefano Brivio; +Cc: passt-dev

[-- Attachment #1: Type: text/plain, Size: 17592 bytes --]

On Thu, Aug 15, 2024 at 12:54:43AM +0200, Stefano Brivio wrote:
> We have a number of delays when we switch to new layouts that were
> added to make the tests visually easier to follow, together with
> blinking status bars. Shorten the delays and avoid blinking the
> status bar if $FAST is set to 1 (no demo mode).
> 
> Shorten delays in busy loops to 10ms, instead of 100ms, and skip the
> one-second fixed delay when we wait for the status of a command.
> 
> Cut the duration of throughput and latency tests to one second, down
> from ten. Somewhat surprisingly, the results we get are rather
> consistent, and not significantly different from what we'd get with
> 10 seconds.
> 
> This, together with Podman's commit 20f3e8909e3a ("test/system:
> pasta_test_do add explicit port check"), cuts the time needed on my
> setup for full test run from approximately 37 minutes to...:
> 
>   $ time ./run
>   [exited]
>   PASS: 165, FAIL: 0
>   Log at /home/sbrivio/passt/test/test_logs/test.log
> 
>   real	15m34.253s
>   user	0m0.011s
>   sys	0m0.011s
> 
> Signed-off-by: Stefano Brivio <sbrivio@redhat.com>

Marvelous!

Reviewed-by: David Gibson <david@gibson.dropbear.id.au>
Tested-by: David Gibson <david@gibson.dropbear.id.au>

> ---
>  test/lib/layout                | 14 +++++++-------
>  test/lib/term                  | 31 +++++++++++++++----------------
>  test/lib/test                  |  2 +-
>  test/pasta_options/log_to_file |  4 ++--
>  test/perf/passt_tcp            | 18 +++++++++---------
>  test/perf/passt_udp            |  2 +-
>  test/perf/pasta_tcp            | 34 +++++++++++++++++-----------------
>  test/perf/pasta_udp            |  2 +-
>  8 files changed, 53 insertions(+), 54 deletions(-)
> 
> diff --git a/test/lib/layout b/test/lib/layout
> index f9a1cf1..4d03572 100644
> --- a/test/lib/layout
> +++ b/test/lib/layout
> @@ -15,7 +15,7 @@
>  
>  # layout_pasta() - Panes for host, pasta, and separate one for namespace
>  layout_pasta() {
> -	sleep 3
> +	sleep 1
>  
>  	tmux kill-pane -a -t 0
>  	cmd_write 0 clear
> @@ -46,7 +46,7 @@ layout_pasta() {
>  
>  # layout_passt() - Panes for host, passt, and guest
>  layout_passt() {
> -	sleep 3
> +	sleep 1
>  
>  	tmux kill-pane -a -t 0
>  	cmd_write 0 clear
> @@ -77,7 +77,7 @@ layout_passt() {
>  
>  # layout_passt_in_pasta() - Host, passt within pasta, namespace and guest
>  layout_passt_in_pasta() {
> -	sleep 3
> +	sleep 1
>  
>  	tmux kill-pane -a -t 0
>  	cmd_write 0 clear
> @@ -113,7 +113,7 @@ layout_passt_in_pasta() {
>  
>  # layout_two_guests() - Two guest panes, two passt panes, plus host and log
>  layout_two_guests() {
> -	sleep 3
> +	sleep 1
>  
>  	tmux kill-pane -a -t 0
>  	cmd_write 0 clear
> @@ -152,7 +152,7 @@ layout_two_guests() {
>  
>  # layout_demo_pasta() - Four panes for pasta demo
>  layout_demo_pasta() {
> -	sleep 3
> +	sleep 1
>  
>  	cmd_write 0 cd ${BASEPATH}
>  	cmd_write 0 clear
> @@ -188,7 +188,7 @@ layout_demo_pasta() {
>  
>  # layout_demo_passt() - Four panes for passt demo
>  layout_demo_passt() {
> -	sleep 3
> +	sleep 1
>  
>  	cmd_write 0 cd ${BASEPATH}
>  	cmd_write 0 clear
> @@ -224,7 +224,7 @@ layout_demo_passt() {
>  
>  # layout_demo_podman() - Four panes for pasta demo with Podman
>  layout_demo_podman() {
> -	sleep 3
> +	sleep 1
>  
>  	cmd_write 0 cd ${BASEPATH}
>  	cmd_write 0 clear
> diff --git a/test/lib/term b/test/lib/term
> index 262937e..3834092 100755
> --- a/test/lib/term
> +++ b/test/lib/term
> @@ -97,7 +97,6 @@ display_delay() {
>  switch_pane() {
>  	tmux select-pane -t ${1}
>  	PR_DELAY=${PR_DELAY_INIT}
> -	display_delay "0.2"
>  }
>  
>  # cmd_write() - Write a command to a pane, letter by letter, and execute it
> @@ -199,7 +198,7 @@ pane_run() {
>  # $1:	Pane name
>  pane_wait() {
>  	__lc="$(echo "${1}" | tr [A-Z] [a-z])"
> -	sleep 0.1 || sleep 1
> +	sleep 0.01 || sleep 1
>  
>  	__done=0
>  	while
> @@ -207,7 +206,7 @@ pane_wait() {
>  		case ${__l} in
>  		*"$ " | *"# ") return ;;
>  		esac
> -	do sleep 0.1 || sleep 1; done
> +	do sleep 0.01 || sleep 1; done
>  }
>  
>  # pane_parse() - Print last line, @EMPTY@ if command had no output
> @@ -231,7 +230,7 @@ pane_status() {
>  
>  	__status="$(pane_parse "${1}")"
>  	while ! [ "${__status}" -eq "${__status}" ] 2>/dev/null; do
> -		sleep 1
> +		sleep 0.01 || sleep 1
>  		pane_run "${1}" 'echo $?'
>  		pane_wait "${1}"
>  		__status="$(pane_parse "${1}")"
> @@ -383,6 +382,16 @@ info_check_failed() {
>  	printf " < failed.\n" >> "${LOGFILE}"
>  }
>  
> +# status_bar_blink() - Make status bar blink
> +status_bar_blink() {
> +	for i in `seq 1 3`; do
> +		tmux set status-right-style 'bg=colour1 fg=colour196 bold'
> +		sleep 0.1 || sleep 1
> +		tmux set status-right-style 'bg=colour1 fg=colour233 bold'
> +		sleep 0.1 || sleep 1
> +	done
> +}
> +
>  # info_passed() - Display, log, and make status bar blink when a test passes
>  info_passed() {
>  	switch_pane ${PANE_INFO}
> @@ -391,12 +400,7 @@ info_passed() {
>  	log "...passed."
>  	log
>  
> -	for i in `seq 1 3`; do
> -		tmux set status-right-style 'bg=colour1 fg=colour2 bold'
> -		sleep "0.1"
> -		tmux set status-right-style 'bg=colour1 fg=colour233 bold'
> -		sleep "0.1"
> -	done
> +	[ ${FAST} -eq 1 ] || status_bar_blink
>  }
>  
>  # info_failed() - Display, log, and make status bar blink when a test passes
> @@ -407,12 +411,7 @@ info_failed() {
>  	log "...failed."
>  	log
>  
> -	for i in `seq 1 3`; do
> -		tmux set status-right-style 'bg=colour1 fg=colour196 bold'
> -		sleep "0.1"
> -		tmux set status-right-style 'bg=colour1 fg=colour233 bold'
> -		sleep "0.1"
> -	done
> +	[ ${FAST} -eq 1 ] || status_bar_blink
>  
>  	pause_continue \
>  		"Press any key to pause test session"		\
> diff --git a/test/lib/test b/test/lib/test
> index c525f8e..e6726be 100755
> --- a/test/lib/test
> +++ b/test/lib/test
> @@ -33,7 +33,7 @@ test_iperf3k() {
>  
>  	pane_or_context_run "${__sctx}" 'kill -INT $(cat s.pid); rm s.pid'
>  
> -	sleep 3		# Wait for kernel to free up ports
> +	sleep 1		# Wait for kernel to free up ports
>  }
>  
>  # test_iperf3() - Ugly helper for iperf3 directive
> diff --git a/test/pasta_options/log_to_file b/test/pasta_options/log_to_file
> index fe50e50..3ead06c 100644
> --- a/test/pasta_options/log_to_file
> +++ b/test/pasta_options/log_to_file
> @@ -19,7 +19,7 @@ sleep	1
>  endef
>  
>  def	flood_log_client
> -host	tcp_crr --nolog -P 10001 -C 10002 -6 -c -H ::1
> +host	tcp_crr --nolog -l1 -P 10001 -C 10002 -6 -c -H ::1
>  endef
>  
>  def	check_log_size_mountns
> @@ -42,7 +42,7 @@ pout	PID2 echo $!
>  check	head -1 __LOG_FILE__ | grep '^pasta .* [(]__PID2__[)]$'
>  
>  test	Maximum log size
> -passtb	./pasta --config-net -d -f -l __LOG_FILE__ --log-size $((100 * 1024)) -- sh -c 'while true; do tcp_crr --nolog -P 10001 -C 10002 -6; done'
> +passtb	./pasta --config-net -d -f -l __LOG_FILE__ --log-size $((100 * 1024)) -- sh -c 'while true; do tcp_crr --nolog -l1 -P 10001 -C 10002 -6; done'
>  sleep	1
>  
>  flood_log_client
> diff --git a/test/perf/passt_tcp b/test/perf/passt_tcp
> index 14343cb..695479f 100644
> --- a/test/perf/passt_tcp
> +++ b/test/perf/passt_tcp
> @@ -38,7 +38,7 @@ hout	FREQ_CPUFREQ (echo "scale=1"; printf '( %i + 10^5 / 2 ) / 10^6\n' $(cat /sy
>  hout	FREQ [ -n "__FREQ_CPUFREQ__" ] && echo __FREQ_CPUFREQ__ || echo __FREQ_PROCFS__
>  
>  set	THREADS 4
> -set	TIME 10
> +set	TIME 1
>  set	OMIT 0.1
>  set	OPTS -Z -P __THREADS__ -l 1M -O__OMIT__
>  
> @@ -75,7 +75,7 @@ lat	-
>  lat	-
>  lat	-
>  nsb	tcp_rr --nolog -6
> -gout	LAT tcp_rr --nolog -6 -c -H __GW6__%__IFNAME__ | sed -n 's/^throughput=\(.*\)/\1/p'
> +gout	LAT tcp_rr --nolog -l1 -6 -c -H __GW6__%__IFNAME__ | sed -n 's/^throughput=\(.*\)/\1/p'
>  lat	__LAT__ 200 150
>  
>  tl	TCP CRR latency over IPv6: guest to host
> @@ -85,7 +85,7 @@ lat	-
>  lat	-
>  lat	-
>  nsb	tcp_crr --nolog -6
> -gout	LAT tcp_crr --nolog -6 -c -H __GW6__%__IFNAME__ | sed -n 's/^throughput=\(.*\)/\1/p'
> +gout	LAT tcp_crr --nolog -l1 -6 -c -H __GW6__%__IFNAME__ | sed -n 's/^throughput=\(.*\)/\1/p'
>  lat	__LAT__ 500 400
>  
>  tr	TCP throughput over IPv4: guest to host
> @@ -119,7 +119,7 @@ lat	-
>  lat	-
>  lat	-
>  nsb	tcp_rr --nolog -4
> -gout	LAT tcp_rr --nolog -4 -c -H __GW__ | sed -n 's/^throughput=\(.*\)/\1/p'
> +gout	LAT tcp_rr --nolog -l1 -4 -c -H __GW__ | sed -n 's/^throughput=\(.*\)/\1/p'
>  lat	__LAT__ 200 150
>  
>  tl	TCP CRR latency over IPv4: guest to host
> @@ -129,7 +129,7 @@ lat	-
>  lat	-
>  lat	-
>  nsb	tcp_crr --nolog -4
> -gout	LAT tcp_crr --nolog -4 -c -H __GW__ | sed -n 's/^throughput=\(.*\)/\1/p'
> +gout	LAT tcp_crr --nolog -l1 -4 -c -H __GW__ | sed -n 's/^throughput=\(.*\)/\1/p'
>  lat	__LAT__ 500 400
>  
>  tr	TCP throughput over IPv6: host to guest
> @@ -153,7 +153,7 @@ lat	-
>  lat	-
>  guestb	tcp_rr --nolog -P 10001 -C 10011 -6
>  sleep	1
> -nsout	LAT tcp_rr --nolog -P 10001 -C 10011 -6 -c -H ::1 | sed -n 's/^throughput=\(.*\)/\1/p'
> +nsout	LAT tcp_rr --nolog -l1 -P 10001 -C 10011 -6 -c -H ::1 | sed -n 's/^throughput=\(.*\)/\1/p'
>  lat	__LAT__ 200 150
>  
>  tl	TCP CRR latency over IPv6: host to guest
> @@ -164,7 +164,7 @@ lat	-
>  lat	-
>  guestb	tcp_crr --nolog -P 10001 -C 10011 -6
>  sleep	1
> -nsout	LAT tcp_crr --nolog -P 10001 -C 10011 -6 -c -H ::1 | sed -n 's/^throughput=\(.*\)/\1/p'
> +nsout	LAT tcp_crr --nolog -l1 -P 10001 -C 10011 -6 -c -H ::1 | sed -n 's/^throughput=\(.*\)/\1/p'
>  lat	__LAT__ 500 350
>  
>  
> @@ -189,7 +189,7 @@ lat	-
>  lat	-
>  guestb	tcp_rr --nolog -P 10001 -C 10011 -4
>  sleep	1
> -nsout	LAT tcp_rr --nolog -P 10001 -C 10011 -4 -c -H 127.0.0.1 | sed -n 's/^throughput=\(.*\)/\1/p'
> +nsout	LAT tcp_rr --nolog -l1 -P 10001 -C 10011 -4 -c -H 127.0.0.1 | sed -n 's/^throughput=\(.*\)/\1/p'
>  lat	__LAT__ 200 150
>  
>  tl	TCP CRR latency over IPv6: host to guest
> @@ -200,7 +200,7 @@ lat	-
>  lat	-
>  guestb	tcp_crr --nolog -P 10001 -C 10011 -4
>  sleep	1
> -nsout	LAT tcp_crr --nolog -P 10001 -C 10011 -4 -c -H 127.0.0.1 | sed -n 's/^throughput=\(.*\)/\1/p'
> +nsout	LAT tcp_crr --nolog -l1 -P 10001 -C 10011 -4 -c -H 127.0.0.1 | sed -n 's/^throughput=\(.*\)/\1/p'
>  lat	__LAT__ 500 300
>  
>  te
> diff --git a/test/perf/passt_udp b/test/perf/passt_udp
> index 8919280..f25c903 100644
> --- a/test/perf/passt_udp
> +++ b/test/perf/passt_udp
> @@ -31,7 +31,7 @@ hout	FREQ_CPUFREQ (echo "scale=1"; printf '( %i + 10^5 / 2 ) / 10^6\n' $(cat /sy
>  hout	FREQ [ -n "__FREQ_CPUFREQ__" ] && echo __FREQ_CPUFREQ__ || echo __FREQ_PROCFS__
>  
>  set	THREADS 2
> -set	TIME 10
> +set	TIME 1
>  set	OPTS -u -P __THREADS__ --pacing-timer 1000
>  
>  info	Throughput in Gbps, latency in µs, __THREADS__ threads at __FREQ__ GHz
> diff --git a/test/perf/pasta_tcp b/test/perf/pasta_tcp
> index 8d2f911..a443f5a 100644
> --- a/test/perf/pasta_tcp
> +++ b/test/perf/pasta_tcp
> @@ -22,7 +22,7 @@ ns	/sbin/sysctl -w net.ipv4.tcp_timestamps=0
>  
>  
>  set	THREADS 4
> -set	TIME 10
> +set	TIME 1
>  set	OMIT 0.1
>  set	OPTS -Z -w 4M -l 1M -P __THREADS__ -O__OMIT__
>  
> @@ -46,13 +46,13 @@ iperf3k	host
>  
>  tl	TCP RR latency over IPv6: ns to host
>  hostb	tcp_rr --nolog -P 10003 -C 10013 -6
> -nsout	LAT tcp_rr --nolog -P 10003 -C 10013 -6 -c -H ::1 | sed -n 's/^throughput=\(.*\)/\1/p'
> +nsout	LAT tcp_rr --nolog -l1 -P 10003 -C 10013 -6 -c -H ::1 | sed -n 's/^throughput=\(.*\)/\1/p'
>  hostw
>  lat	__LAT__ 150 100
>  
>  tl	TCP CRR latency over IPv6: ns to host
>  hostb	tcp_crr --nolog -P 10003 -C 10013 -6
> -nsout	LAT tcp_crr --nolog -P 10003 -C 10013 -6 -c -H ::1 | sed -n 's/^throughput=\(.*\)/\1/p'
> +nsout	LAT tcp_crr --nolog -l1 -P 10003 -C 10013 -6 -c -H ::1 | sed -n 's/^throughput=\(.*\)/\1/p'
>  hostw
>  lat	__LAT__ 500 350
>  
> @@ -67,13 +67,13 @@ iperf3k	host
>  
>  tl	TCP RR latency over IPv4: ns to host
>  hostb	tcp_rr --nolog -P 10003 -C 10013 -4
> -nsout	LAT tcp_rr --nolog -P 10003 -C 10013 -4 -c -H 127.0.0.1 | sed -n 's/^throughput=\(.*\)/\1/p'
> +nsout	LAT tcp_rr --nolog -l1 -P 10003 -C 10013 -4 -c -H 127.0.0.1 | sed -n 's/^throughput=\(.*\)/\1/p'
>  hostw
>  lat	__LAT__ 150 100
>  
>  tl	TCP CRR latency over IPv4: ns to host
>  hostb	tcp_crr --nolog -P 10003 -C 10013 -4
> -nsout	LAT tcp_crr --nolog -P 10003 -C 10013 -4 -c -H 127.0.0.1 | sed -n 's/^throughput=\(.*\)/\1/p'
> +nsout	LAT tcp_crr --nolog -l1 -P 10003 -C 10013 -4 -c -H 127.0.0.1 | sed -n 's/^throughput=\(.*\)/\1/p'
>  hostw
>  lat	__LAT__ 500 350
>  
> @@ -87,13 +87,13 @@ iperf3k	ns
>  
>  tl	TCP RR latency over IPv6: host to ns
>  nsb	tcp_rr --nolog -P 10002 -C 10012 -6
> -hout	LAT tcp_rr --nolog -P 10002 -C 10012 -6 -c -H ::1 | sed -n 's/^throughput=\(.*\)/\1/p'
> +hout	LAT tcp_rr --nolog -l1 -P 10002 -C 10012 -6 -c -H ::1 | sed -n 's/^throughput=\(.*\)/\1/p'
>  nsw
>  lat	__LAT__ 150 100
>  
>  tl	TCP CRR latency over IPv6: host to ns
>  nsb	tcp_crr --nolog -P 10002 -C 10012 -6
> -hout	LAT tcp_crr --nolog -P 10002 -C 10012 -6 -c -H ::1 | sed -n 's/^throughput=\(.*\)/\1/p'
> +hout	LAT tcp_crr --nolog -l1 -P 10002 -C 10012 -6 -c -H ::1 | sed -n 's/^throughput=\(.*\)/\1/p'
>  nsw
>  lat	__LAT__ 1000 700
>  
> @@ -108,13 +108,13 @@ iperf3k	ns
>  
>  tl	TCP RR latency over IPv4: host to ns
>  nsb	tcp_rr --nolog -P 10002 -C 10012 -4
> -hout	LAT tcp_rr --nolog -P 10002 -C 10012 -4 -c -H 127.0.0.1 | sed -n 's/^throughput=\(.*\)/\1/p'
> +hout	LAT tcp_rr --nolog -l1 -P 10002 -C 10012 -4 -c -H 127.0.0.1 | sed -n 's/^throughput=\(.*\)/\1/p'
>  nsw
>  lat	__LAT__ 150 100
>  
>  tl	TCP CRR latency over IPv4: host to ns
>  nsb	tcp_crr --nolog -P 10002 -C 10012 -4
> -hout	LAT tcp_crr --nolog -P 10002 -C 10012 -4 -c -H 127.0.0.1 | sed -n 's/^throughput=\(.*\)/\1/p'
> +hout	LAT tcp_crr --nolog -l1 -P 10002 -C 10012 -4 -c -H 127.0.0.1 | sed -n 's/^throughput=\(.*\)/\1/p'
>  nsw
>  lat	__LAT__ 1000 700
>  
> @@ -156,7 +156,7 @@ lat	-
>  lat	-
>  lat	-
>  hostb	tcp_rr --nolog -P 10003 -C 10013 -6
> -nsout	LAT tcp_rr --nolog -P 10003 -C 10013 -6 -c -H __GW6__%__IFNAME__ | sed -n 's/^throughput=\(.*\)/\1/p'
> +nsout	LAT tcp_rr --nolog -l1 -P 10003 -C 10013 -6 -c -H __GW6__%__IFNAME__ | sed -n 's/^throughput=\(.*\)/\1/p'
>  hostw
>  lat	__LAT__ 150 100
>  
> @@ -165,7 +165,7 @@ lat	-
>  lat	-
>  lat	-
>  hostb	tcp_crr --nolog -P 10003 -C 10013 -6
> -nsout	LAT tcp_crr --nolog -P 10003 -C 10013 -6 -c -H __GW6__%__IFNAME__ | sed -n 's/^throughput=\(.*\)/\1/p'
> +nsout	LAT tcp_crr --nolog -l1 -P 10003 -C 10013 -6 -c -H __GW6__%__IFNAME__ | sed -n 's/^throughput=\(.*\)/\1/p'
>  hostw
>  lat	__LAT__ 1500 500
>  
> @@ -193,7 +193,7 @@ lat	-
>  lat	-
>  lat	-
>  hostb	tcp_rr --nolog -P 10003 -C 10013 -4
> -nsout	LAT tcp_rr --nolog -P 10003 -C 10013 -4 -c -H __GW__ | sed -n 's/^throughput=\(.*\)/\1/p'
> +nsout	LAT tcp_rr --nolog -l1 -P 10003 -C 10013 -4 -c -H __GW__ | sed -n 's/^throughput=\(.*\)/\1/p'
>  hostw
>  lat	__LAT__ 150 100
>  
> @@ -202,7 +202,7 @@ lat	-
>  lat	-
>  lat	-
>  hostb	tcp_crr --nolog -P 10003 -C 10013 -4
> -nsout	LAT tcp_crr --nolog -P 10003 -C 10013 -4 -c -H __GW__ | sed -n 's/^throughput=\(.*\)/\1/p'
> +nsout	LAT tcp_crr --nolog -l1 -P 10003 -C 10013 -4 -c -H __GW__ | sed -n 's/^throughput=\(.*\)/\1/p'
>  hostw
>  lat	__LAT__ 1500 500
>  
> @@ -224,7 +224,7 @@ lat	-
>  lat	-
>  lat	-
>  nsb	tcp_rr --nolog -P 10002 -C 10012 -6
> -hout	LAT tcp_rr --nolog -P 10002 -C 10012 -6 -c -H __ADDR6__ | sed -n 's/^throughput=\(.*\)/\1/p'
> +hout	LAT tcp_rr --nolog -l1 -P 10002 -C 10012 -6 -c -H __ADDR6__ | sed -n 's/^throughput=\(.*\)/\1/p'
>  nsw
>  lat	__LAT__ 150 100
>  
> @@ -234,7 +234,7 @@ lat	-
>  lat	-
>  sleep	1
>  nsb	tcp_crr --nolog -P 10002 -C 10012 -6
> -hout	LAT tcp_crr --nolog -P 10002 -C 10012 -6 -c -H __ADDR6__ | sed -n 's/^throughput=\(.*\)/\1/p'
> +hout	LAT tcp_crr --nolog -l1 -P 10002 -C 10012 -6 -c -H __ADDR6__ | sed -n 's/^throughput=\(.*\)/\1/p'
>  nsw
>  lat	__LAT__ 5000 10000
>  
> @@ -256,7 +256,7 @@ lat	-
>  lat	-
>  lat	-
>  nsb	tcp_rr --nolog -P 10002 -C 10012 -4
> -hout	LAT tcp_rr --nolog -P 10002 -C 10012 -4 -c -H __ADDR__ | sed -n 's/^throughput=\(.*\)/\1/p'
> +hout	LAT tcp_rr --nolog -l1 -P 10002 -C 10012 -4 -c -H __ADDR__ | sed -n 's/^throughput=\(.*\)/\1/p'
>  nsw
>  lat	__LAT__ 150 100
>  
> @@ -266,7 +266,7 @@ lat	-
>  lat	-
>  sleep	1
>  nsb	tcp_crr --nolog -P 10002 -C 10012 -4
> -hout	LAT tcp_crr --nolog -P 10002 -C 10012 -4 -c -H __ADDR__ | sed -n 's/^throughput=\(.*\)/\1/p'
> +hout	LAT tcp_crr --nolog -l1 -P 10002 -C 10012 -4 -c -H __ADDR__ | sed -n 's/^throughput=\(.*\)/\1/p'
>  nsw
>  lat	__LAT__ 5000 10000
>  
> diff --git a/test/perf/pasta_udp b/test/perf/pasta_udp
> index 6acbfd3..9fed62e 100644
> --- a/test/perf/pasta_udp
> +++ b/test/perf/pasta_udp
> @@ -21,7 +21,7 @@ hout	FREQ_CPUFREQ (echo "scale=1"; printf '( %i + 10^5 / 2 ) / 10^6\n' $(cat /sy
>  hout	FREQ [ -n "__FREQ_CPUFREQ__" ] && echo __FREQ_CPUFREQ__ || echo __FREQ_PROCFS__
>  
>  set	THREADS 1
> -set	TIME 10
> +set	TIME 1
>  set	OPTS -u -P __THREADS__
>  
>  info	Throughput in Gbps, latency in µs, one thread at __FREQ__ GHz

-- 
David Gibson (he or they)	| I'll have my music baroque, and my code
david AT gibson.dropbear.id.au	| minimalist, thank you, not the other way
				| around.
http://www.ozlabs.org/~dgibson

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 833 bytes --]

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2024-08-15  3:44 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2024-08-14 22:54 [PATCH] test: Speed up by cutting on eye candy and performance test duration Stefano Brivio
2024-08-15  3:43 ` David Gibson

Code repositories for project(s) associated with this public inbox

	https://passt.top/passt

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for IMAP folder(s).