Re: [PATCH 0/3] iothread and irqfd support

2022-10-13 Thread Jinhao Fan
I also came across the Interrupt Coalescing feature in NVMe (5.21.1.8 in Spec 1.4c). It seems to suggest an algorithm based on thresholds for the maximum interrupt delay time and minimum number of coalesced interrupts. Klaus, based on your experience, how does this algorithm work? Is is commonly u

Re: [PATCH 0/3] iothread and irqfd support

2022-10-12 Thread Stefan Hajnoczi
virtio-blk's dataplane BH completion batching mechanism is not enabled by default and the performance results are mixed. If you develop a different mechanism from scratch I think there's a good chance it would work better :). This looks like a queuing theory problem to me. It should be possible to

Re: [PATCH 0/3] iothread and irqfd support

2022-10-12 Thread Jinhao Fan
On 10/12/2022 10:39 PM, Klaus Jensen wrote: I have been meaning to pick it up, but I got side-tracked. The polling performance drop needs to be address as we discussed offline. But the v4 looks pretty good and I can pick that up without the polling support for now. I've been using the v4 witho

Re: [PATCH 0/3] iothread and irqfd support

2022-10-12 Thread Klaus Jensen
On Okt 12 10:28, Stefan Hajnoczi wrote: > On Fri, 26 Aug 2022 at 07:18, Jinhao Fan wrote: > > > > This patch series adds support for using a seperate iothread for NVMe > > IO emulation, which brings the potential of applying polling. The > > first two patches implements support for irqfd, which so

Re: [PATCH 0/3] iothread and irqfd support

2022-10-12 Thread Stefan Hajnoczi
On Fri, 26 Aug 2022 at 07:18, Jinhao Fan wrote: > > This patch series adds support for using a seperate iothread for NVMe > IO emulation, which brings the potential of applying polling. The > first two patches implements support for irqfd, which solves thread > safety problems for interrupt emulat

[PATCH 0/3] iothread and irqfd support

2022-08-26 Thread Jinhao Fan
This patch series adds support for using a seperate iothread for NVMe IO emulation, which brings the potential of applying polling. The first two patches implements support for irqfd, which solves thread safety problems for interrupt emulation outside the main loop thread. Jinhao Fan (3): hw/nvm