qemu/hw/virtio
Jason Wang 851c2a75a6 virtio-pci: speedup MSI-X masking and unmasking
This patch tries to speed up the MSI-X masking and unmasking through
the mapping between vector and queues. With this patch it will there's
no need to go through all possible virtqueues, which may help to
reduce the time spent when doing MSI-X masking/unmasking a single
vector when more than hundreds or even thousands of virtqueues were
supported.

Tested with 80 queue pairs virito-net-pci by changing the smp affinity
in the background and doing netperf in the same time:

Before the patch:
5711.70 Gbits/sec
After the patch:
6830.98 Gbits/sec

About 19.6% improvements in throughput.

Cc: Michael S. Tsirkin <mst@redhat.com>
Signed-off-by: Jason Wang <jasowang@redhat.com>
Reviewed-by: Michael S. Tsirkin <mst@redhat.com>
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
2015-04-27 21:02:41 +02:00
..
dataplane virtio: add feature checking helpers 2015-02-26 13:04:07 +01:00
Makefile.objs dataplane: endianness-aware accesses 2015-02-16 15:07:16 +00:00
vhost-backend.c vhost: Remove superfluous '\n' around error_report() 2015-03-10 08:15:33 +03:00
vhost-user.c vhost-user: fix mmap offset calculation 2014-11-03 18:32:48 +02:00
vhost.c vhost: fix log base address 2015-04-20 09:27:01 +01:00
virtio-balloon.c balloon: improve error msg when adding second device 2015-04-24 14:18:05 -04:00
virtio-bus.c virtio: cull virtio_bus_set_vdev_features 2015-02-26 13:04:07 +01:00
virtio-mmio.c virtio: feature bit manipulation helpers 2015-02-26 13:04:07 +01:00
virtio-pci.c virtio-pci: speedup MSI-X masking and unmasking 2015-04-27 21:02:41 +02:00
virtio-pci.h virtio-pci: Convert to realize() 2015-03-11 18:24:13 +01:00
virtio-rng.c virtio-rng: fix check for period_ms validity 2015-01-05 14:02:47 +05:30
virtio.c virtio: introduce vector to virtqueues mapping 2015-04-27 21:02:41 +02:00