Re: MSI-X vector limits and reserving a virtio device ID

"Michael S. Tsirkin" <[email protected]> Thu, 28 May 2026 03:23:08 -0400
Newsgroups dev.linux.lists.virtio-comment
Message-ID <[email protected]>
On Thu, May 28, 2026 at 03:03:00AM -0400, Demi Marie Obenour wrote:
> On 5/28/26 01:22, Parav Pandit wrote:
> > 
> >> From: Demi Marie Obenour <[email protected]>
> >> Sent: 28 May 2026 05:23 AM
> >> To: [email protected]
> >> Subject: MSI-X vector limits and reserving a virtio device ID
> >>
> >> I'd like to reserve a virtio device ID for virtio vhost-guest,
> >> formally virtio vhost-user.  Would this be possible?
> >>
> > Vhost user is an implementation of the device.
> > I believe it stays as implementation and not a new device type.
> 
> Virtio vhost-user is a device used to implement a vhost-user device
> from another VM.
> 
> >> Also, I'd like to know which systems have a small limit on the number
> >> of MSI-X vectors.  
> > I didn’t follow the question. Typically, Intel cpu has a limit of 256 vectors per core.
> > 
> >> The vhost-guest device uses lots of MSI-X vectors.
> >> Typical implementations will use 256 * 3 + 7 = 775 of them!  That can,
> >> of course, be reduced by sharing vectors, but this is undesirable
> >> as it comes at a performance cost.
> > Did you get a chance to measure the performance, for which device type?
> > Interrupts are generally moderated.
> > In other devices (scalable functions of mlx5) I have measured perf of 8 to 16 queues sharing a vectors has < 4% perf drop.
> 
> I'm more concerned with whether it is a problem to assume that
> 775 MSI-X interrupts can be exposed by a virtual device.

Why not? But many hosts will have to share them.


> -- 
> Sincerely,
> Demi Marie Obenour (she/her/hers)