[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH 1/1] util/thread-pool: add parameter to limit ma
From: |
Stefan Hajnoczi |
Subject: |
Re: [Qemu-devel] [PATCH 1/1] util/thread-pool: add parameter to limit maximum threads in thread pool |
Date: |
Fri, 27 Jul 2018 11:18:26 +0100 |
User-agent: |
Mutt/1.10.0 (2018-05-17) |
On Fri, Jul 13, 2018 at 03:48:27PM +0800, FelixYao wrote:
> Hi all:
>
> Max threads in thread pool is fixed at 64 before which is not
> propriate in some situations. For public cloud environment,
> there are lots of VMs in one host machine. We should limit the worker thread
> numbers for each machine alone based on its ability to prevent impacting
> each other. Although we can use iotune to limit bandwidth or IOPS of block
> device. That is not enough. Lots of worker threads still impact other VMs.
> I think the ability to limit maximum threads in thread pool is necessary.
>
> What's your opinion about this patch? please review it.
I haven't seen any discussion so here are some thoughts:
It sounds like you are trying to control I/O resources so that guests do
not affect each other. The threads are an implementation detail and not
the root of the problem.
For example, if you use -drive aio=native then reads and writes will not
use the thread pool and you will setting the thread pool size won't
solve the problem.
Have you tried QEMU's I/O throttling feature? You can set bandwidth
(bps) and IOPS limits, including bursts if you wish to allow temporary
spikes. The basic parameters are -drive bps=BYTES_PER_SECOND,iops=IOPS.
See the QEMU or libvirt documentation for details.
signature.asc
Description: PGP signature