test/vhost: enable packed ring for BLK in performance tests
Enable Packed Ring option in performance tests. Only BLK stack for now, as SCSI doesn't have this option yet. Change-Id: Ie70642dd846ada35926e17204770ea2436089432 Signed-off-by: Karol Latecki <karol.latecki@intel.com> Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/2716 Community-CI: Mellanox Build Bot Tested-by: SPDK CI Jenkins <sys_sgci@intel.com> Reviewed-by: Darek Stojaczyk <dariusz.stojaczyk@intel.com> Reviewed-by: Changpeng Liu <changpeng.liu@intel.com>
This commit is contained in:
parent
2c7ba231d3
commit
262c35fc9a
@ -91,6 +91,13 @@ function notice() {
|
||||
message "INFO" "$@"
|
||||
}
|
||||
|
||||
function check_qemu_packedring_support() {
|
||||
qemu_version=$($QEMU_BIN -version | grep -Po "(?<=version )\d+.\d+.\d+")
|
||||
if [[ "$qemu_version" < "4.2.0" ]]; then
|
||||
error "This qemu binary does not support packed ring"
|
||||
fi
|
||||
}
|
||||
|
||||
function get_vhost_dir() {
|
||||
local vhost_name="$1"
|
||||
|
||||
@ -499,6 +506,7 @@ function vm_setup() {
|
||||
local guest_memory=1024
|
||||
local queue_number=""
|
||||
local vhost_dir
|
||||
local packed=false
|
||||
vhost_dir="$(get_vhost_dir 0)"
|
||||
while getopts ':-:' optchar; do
|
||||
case "$optchar" in
|
||||
@ -518,6 +526,7 @@ function vm_setup() {
|
||||
migrate-to=*) vm_migrate_to="${OPTARG#*=}" ;;
|
||||
vhost-name=*) vhost_dir="$(get_vhost_dir ${OPTARG#*=})" ;;
|
||||
spdk-boot=*) local boot_from="${OPTARG#*=}" ;;
|
||||
packed) packed=true ;;
|
||||
*)
|
||||
error "unknown argument $OPTARG"
|
||||
return 1
|
||||
@ -722,6 +731,12 @@ function vm_setup() {
|
||||
cmd[-1]+=,bootindex=0
|
||||
boot_disk_present=true
|
||||
fi
|
||||
|
||||
if $packed; then
|
||||
check_qemu_packedring_support
|
||||
notice "Enabling packed ring support for VM $vm_num, controller $vhost_dir/naa.$disk.$vm_num"
|
||||
cmd[-1]+=,packed=on
|
||||
fi
|
||||
;;
|
||||
kernel_vhost)
|
||||
if [[ -z $disk ]]; then
|
||||
|
@ -22,6 +22,7 @@ lvol_bdevs=()
|
||||
split_bdevs=()
|
||||
used_vms=""
|
||||
wwpn_prefix="naa.5001405bc6498"
|
||||
packed_ring=false
|
||||
|
||||
fio_iterations=1
|
||||
precond_fio_bin=$CONFIG_FIO_SOURCE_DIR/fio
|
||||
@ -62,6 +63,7 @@ function usage() {
|
||||
echo " spdk_vhost_blk - use spdk vhost block"
|
||||
echo " kernel_vhost - use kernel vhost scsi"
|
||||
echo " Default: spdk_vhost_scsi"
|
||||
echo " --packed-ring Use packed ring support. Requires Qemu 4.2.0 or greater. Default: disabled."
|
||||
echo " --use-split Use split vbdevs instead of Logical Volumes"
|
||||
echo " --limit-kernel-vhost=INT Limit kernel vhost to run only on a number of CPU cores."
|
||||
echo " --run-precondition Precondition lvols after creating. Default: true."
|
||||
@ -121,6 +123,11 @@ function create_vm() {
|
||||
else
|
||||
setup_cmd+=" --disks=0"
|
||||
fi
|
||||
|
||||
if $packed_ring; then
|
||||
setup_cmd+=" --packed"
|
||||
fi
|
||||
|
||||
$setup_cmd
|
||||
used_vms+=" $vm_num"
|
||||
echo "Added to used vms"
|
||||
@ -137,7 +144,11 @@ function create_spdk_controller() {
|
||||
$rpc_py vhost_scsi_controller_add_target naa.0.$vm_num 0 $bdev
|
||||
notice "Added LUN 0/$bdev to controller naa.0.$vm_num"
|
||||
elif [[ "$ctrl_type" == "spdk_vhost_blk" ]]; then
|
||||
$rpc_py vhost_create_blk_controller naa.0.$vm_num $bdev
|
||||
if $packed_ring; then
|
||||
p_opt="-p"
|
||||
fi
|
||||
|
||||
$rpc_py vhost_create_blk_controller naa.0.$vm_num $bdev $p_opt
|
||||
notice "Created vhost blk controller naa.0.$vm_num $bdev"
|
||||
fi
|
||||
}
|
||||
@ -159,6 +170,7 @@ while getopts 'xh-:' optchar; do
|
||||
sar-count=*) sar_count="${OPTARG#*=}" ;;
|
||||
vm-throttle-iops=*) vm_throttle="${OPTARG#*=}" ;;
|
||||
ctrl-type=*) ctrl_type="${OPTARG#*=}" ;;
|
||||
packed-ring) packed_ring=true ;;
|
||||
use-split) use_split=true ;;
|
||||
run-precondition) run_precondition=true ;;
|
||||
precond-fio-bin=*) precond_fio_bin="${OPTARG#*=}" ;;
|
||||
|
Loading…
Reference in New Issue
Block a user