Bug 1814234 - virtio-blk has >10% overhead when compared to baremetal
Summary: virtio-blk has >10% overhead when compared to baremetal
Alias: None
Product: Red Hat Enterprise Linux 9
Classification: Red Hat
Component: qemu-kvm
Version: 9.0
Hardware: x86_64
OS: Linux
Target Milestone: rc
: ---
Assignee: Stefan Hajnoczi
QA Contact: Tingting Mao
Depends On:
TreeView+ depends on / blocked
Reported: 2020-03-17 12:43 UTC by Karl Rister
Modified: 2021-10-11 02:11 UTC (History)
12 users (show)

Fixed In Version:
Doc Type: If docs needed, set a value
Doc Text:
Clone Of:
Last Closed: 2021-09-17 07:27:00 UTC
Type: Bug
Target Upstream Version:

Attachments (Terms of Use)

Description Karl Rister 2020-03-17 12:43:20 UTC
Description of problem:

When running simple fio tests on baremetal and a KVM guest using a virtio-blk device the overhead is very high, with the KVM scenario being as much as 63% slower than baremetal.  We have workload targets (such as for SAP) where the requirement is the virtualized solution being <10% slower than baremetal.

Version-Release number of selected component (if applicable):

RHEL 8.x and upstream testing

How reproducible:


Steps to Reproduce:
1. Setup a KVM guest using virtio-blk with cache=none, io=native, and a dedicated io thread
2. Run simple (ie. ioengine=sync, iodepth=1, job=1) fio tests in baremetal directly against the device (ie. /dev/nvme0n1) and in the guest (ie. /dev/vdb).
3. Compare the results

Actual results:

For example, for a random read test with block size=4K and iodepth=1 baremetal achieves 290,700 IOPs across 3 Intel Optane 4800x PCIe devices.  When tested inside a KVM guest with virtio-blk being the paravirtual interface to the physical devices the throughput achieved was 105,000 IOPs.  That is a 63.8% reduction in throughput.

Expected results:

A throughput reduction of less than 10%.

Additional info:

This is a preliminary report of this regression.  There is a significant amount of data collected that explores various optimizations that improve the situation but come nowhere close to achieving the less than 10% target.

Comment 6 John Ferlan 2021-09-08 21:41:32 UTC
Move RHEL-AV bugs to RHEL9. If necessary to resolve in RHEL8, then clone to the current RHEL8 release.

Comment 7 RHEL Program Management 2021-09-17 07:27:00 UTC
After evaluating this issue, there are no plans to address it further or fix it in an upcoming release.  Therefore, it is being closed.  If plans change such that this issue will be fixed in an upcoming release, then the bug can be reopened.

Note You need to log in before you can comment on or make changes to this bug.