| #!/bin/sh |
| # - runtime |
| # - nr_threads |
| # - ip |
| # - test |
| # - send_size |
| |
| ## Netperf is a benchmark that can be use to measure various aspect of |
| ## networking performance. The primary foci are bulk (aka unidirectional) |
| ## data transfer and request/response performance using either TCP |
| ## or UDP and the Berkeley Sockets interface. |
| |
| . $LKP_SRC/lib/reproduce-log.sh |
| |
| export PATH=$BENCHMARK_ROOT/netperf/bin:$PATH |
| |
| [ "${test#*SCTP}" != "$test" ] && log_cmd modprobe sctp 2>/dev/null |
| sleep 1 |
| |
| [ -n "$send_size" ] && test_options="-- -m $send_size" |
| |
| [ -n "$direct_server_ips" ] && server=$direct_server_ips |
| [ -z "$server" ] && { |
| if [ "$ip" = 'ipv6' ]; then |
| server=::1 |
| else |
| server=127.0.0.1 |
| fi |
| } |
| server=${server%% *} |
| |
| opt_ip= |
| [ "$ip" = 'ipv4' ] && opt_ip='-4' |
| [ "$ip" = 'ipv6' ] && opt_ip='-6' |
| |
| for i in $(seq $nr_threads) |
| do |
| log_eval "netperf $opt_ip -t $test -c -C -l $runtime $test_options -H $server &" |
| done |
| |
| log_eval wait |
| |
| # Comments from Jesse Brandeburg <jesse.brandeburg@intel.com> |
| # -P0 -- -r 64k -b 10 |
| # -T0,0 |