test/vhost: add option for fio gtod_reduce
Enable gtod_reduce fio option on demand for better IOPS/BW results at cost of reducing latency measurements. Signed-off-by: Karol Latecki <karol.latecki@intel.com> Change-Id: I0511a5fdc09bb20b5a769ad55f2306b87e5d2dde Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/3502 Tested-by: SPDK CI Jenkins <sys_sgci@intel.com> Community-CI: Mellanox Build Bot Reviewed-by: Tomasz Zawadzki <tomasz.zawadzki@intel.com> Reviewed-by: Jim Harris <james.r.harris@intel.com>
This commit is contained in:
parent
c3dc7fb5f2
commit
757eddeb59
@ -1049,6 +1049,7 @@ function run_fio() {
|
||||
local run_plugin_mode=false
|
||||
local fio_start_cmd
|
||||
local fio_output_format="normal"
|
||||
local fio_gtod_reduce=false
|
||||
local wait_for_fio=true
|
||||
|
||||
for arg in "$@"; do
|
||||
@ -1069,6 +1070,7 @@ function run_fio() {
|
||||
--json) fio_output_format="json" ;;
|
||||
--hide-results) hide_results=true ;;
|
||||
--no-wait-for-fio) wait_for_fio=false ;;
|
||||
--gtod-reduce) fio_gtod_reduce=true ;;
|
||||
*)
|
||||
error "Invalid argument '$arg'"
|
||||
return 1
|
||||
@ -1103,6 +1105,11 @@ function run_fio() {
|
||||
local vmdisks=${vm#*:}
|
||||
|
||||
sed "s@filename=@filename=$vmdisks@" $job_file | vm_exec $vm_num "cat > /root/$job_fname"
|
||||
|
||||
if $fio_gtod_reduce; then
|
||||
vm_exec $vm_num "echo 'gtod_reduce=1' >> /root/$job_fname"
|
||||
fi
|
||||
|
||||
vm_exec $vm_num cat /root/$job_fname
|
||||
|
||||
if $run_server_mode; then
|
||||
|
@ -25,6 +25,7 @@ wwpn_prefix="naa.5001405bc6498"
|
||||
packed_ring=false
|
||||
|
||||
fio_iterations=1
|
||||
fio_gtod=""
|
||||
precond_fio_bin=$CONFIG_FIO_SOURCE_DIR/fio
|
||||
disk_map=""
|
||||
|
||||
@ -48,6 +49,7 @@ function usage() {
|
||||
echo " of binary is recommended."
|
||||
echo " --fio-jobs=PATH Comma separated list of fio config files to use for test."
|
||||
echo " --fio-iterations=INT Number of times to run specified workload."
|
||||
echo " --fio-gtod-reduce Enable fio gtod_reduce option in test."
|
||||
echo " --vm-memory=INT Amount of RAM memory (in MB) to pass to a single VM."
|
||||
echo " Default: 2048 MB"
|
||||
echo " --vm-image=PATH OS image to use for running the VMs."
|
||||
@ -161,6 +163,7 @@ while getopts 'xh-:' optchar; do
|
||||
fio-bin=*) fio_bin="--fio-bin=${OPTARG#*=}" ;;
|
||||
fio-jobs=*) fio_jobs="${OPTARG#*=}" ;;
|
||||
fio-iterations=*) fio_iterations="${OPTARG#*=}" ;;
|
||||
fio-gtod-reduce) fio_gtod="--gtod-reduce" ;;
|
||||
vm-memory=*) vm_memory="${OPTARG#*=}" ;;
|
||||
vm-image=*) VM_IMAGE="${OPTARG#*=}" ;;
|
||||
vm-sar-enable) vm_sar_enable=true ;;
|
||||
@ -411,7 +414,7 @@ for fio_job in ${fio_jobs//,/ }; do
|
||||
fio_log_fname="${fio_job_fname%%.*}.log"
|
||||
for i in $(seq 1 $fio_iterations); do
|
||||
echo "Running FIO iteration $i for $fio_job_fname"
|
||||
run_fio $fio_bin --hide-results --job-file="$fio_job" --out="$VHOST_DIR/fio_results" --json $fio_disks &
|
||||
run_fio $fio_bin --hide-results --job-file="$fio_job" --out="$VHOST_DIR/fio_results" --json $fio_disks $fio_gtod &
|
||||
fio_pid=$!
|
||||
|
||||
if $host_sar_enable || $vm_sar_enable; then
|
||||
|
Loading…
x
Reference in New Issue
Block a user