diff options
author | Stefan Hajnoczi <stefanha@redhat.com> | 2020-02-18 18:22:26 +0000 |
---|---|---|
committer | Paolo Bonzini <pbonzini@redhat.com> | 2020-02-25 09:18:01 +0100 |
commit | 920d557e5ae58671d335acbcfba3f9a97a02911c (patch) | |
tree | c6fbdce4ebcffb29ae5f92322b2e82ebc7216a09 /monitor/misc.c | |
parent | c1e667d2598b9b3ce62b8e89ed22dd38dfe9f57f (diff) |
memory: batch allocate ioeventfds[] in address_space_update_ioeventfds()
Reallocing the ioeventfds[] array each time an element is added is very
expensive as the number of ioeventfds increases. Batch allocate instead
to amortize the cost of realloc.
This patch reduces Linux guest boot times from 362s to 140s when there
are 2 virtio-blk devices with 1 virtqueue and 99 virtio-blk devices with
32 virtqueues.
Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
Message-Id: <20200218182226.913977-1-stefanha@redhat.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
Diffstat (limited to 'monitor/misc.c')
0 files changed, 0 insertions, 0 deletions