[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH v3 0/4] irqfd, iothread and polling support
From: |
Klaus Jensen |
Subject: |
Re: [PATCH v3 0/4] irqfd, iothread and polling support |
Date: |
Thu, 20 Oct 2022 13:16:51 +0200 |
On Aug 27 17:12, Jinhao Fan wrote:
> This series of performance enhancements brings iothread and polling
> capabilities to qemu-nvme. The first two patches implements support
> for irqfd, which solves thread safety problems for interrupt emulation
> outside the main loop thread. The third patch adds support for
> emulating NVMe IO queues in a dedicated iothread, which avoid
> interference from other devices running on the main loop thread.
> The fourth patch implements SQ and CQ pollers, thus enabling polling
> on SQ and CQ.
>
> After all these optimizations, our performance becomes similar to
> virtio-blk.
>
> Comparison (KIOPS):
>
> QD 1 4 16 64
> virtio-blk 59 185 260 256
> nvme 53 155 245 309
> virtio-blk-polling 88 212 210 213
> nvme-polling 123 165 189 191
>
While reviewing this I noticed that the commit that introduced the
ioeventfd, we end up disabling batching of cqes (that is, we post and
interrupt for *each* cqe).
I'll post a patch to rectify that. With that, I am seeing progressive
performance improvements with the patches in this series.
signature.asc
Description: PGP signature
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- Re: [PATCH v3 0/4] irqfd, iothread and polling support,
Klaus Jensen <=