[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] Disparity between host and guest CPU utilization during
From: |
Stefan Hajnoczi |
Subject: |
Re: [Qemu-devel] Disparity between host and guest CPU utilization during disk IO benchmark |
Date: |
Tue, 11 Jul 2017 10:18:41 +0100 |
User-agent: |
Mutt/1.8.0 (2017-02-23) |
On Mon, Jul 10, 2017 at 05:27:15PM +0000, Nagarajan, Padhu (HPE Storage) wrote:
> Posted this in qemu-discuss and did not get a response. Hoping that someone
> here might be able to offer insights.
>
> I was running an 8K random-read fio benchmark inside the guest with
> iodepth=32. The device used inside the guest for the test was a virtio-blk
> device with iothread enabled, mapped on to a raw block device on the host.
> While this workload was running, I took a snapshot of the CPU utilization
> reported by the host and the guest. The guest had 4 cores. top inside guest
> shows 3 idle cores and one core being 74% utilized by fio (active on core 3).
> The host had 12 cores and three cores were completely consumed by three qemu
> threads. top inside host shows three qemu threads, each utilizing the CPU
> core to a near 100%. These threads are "CPU 1/KVM", "CPU 3/KVM" and "IO
> iothread1". The CPU utilization story on the host side is the same, even if I
> run a light fio workload inside the guest (for ex. iodepth=1).
>
> Why do I see two "CPU/KVM" threads occupying 100% CPU, even though only one
> core inside the guest is being utilized ? Note that I had 'accel=kvm' turned
> on for the guest.
fio might be submitting I/O requests on one vcpu and the completion
interrupts are processed on another vcpu.
To discuss further, please post:
1. Full QEMU command-line
2. Full fio command-line and job file (if applicable)
3. Output of cat /proc/interrupts inside the guest after running the
benchmark
signature.asc
Description: PGP signature