From: Igor Mammedov <imammedo@redhat.com>
To: linux-kernel@vger.kernel.org
Cc: mst@redhat.com, kvm@vger.kernel.org, pbonzini@redhat.com,
andrey@xdel.ru, digitaleric@google.com
Subject: [PATCH v2 0/6] vhost: support upto 509 memory regions
Date: Wed, 17 Jun 2015 15:14:53 +0200 [thread overview]
Message-ID: <1434546899-5296-1-git-send-email-imammedo@redhat.com> (raw)
Ref to prefious version discussion:
[PATCH 0/5] vhost: support upto 509 memory regions
http://www.spinics.net/lists/kvm/msg117654.html
Chagelog v1->v2:
* fix spelling errors
* move "vhost: support upto 509 memory regions" to the end of queue
* move kvfree() form 1/6 to 2/6 where it belongs
* add vhost module parameter to enable/disable translation caching
Series extends vhost to support upto 509 memory regions,
and adds some vhost:translate_desc() performance improvemnts
so it won't regress when memslots are increased to 509.
It fixes running VM crashing during memory hotplug due
to vhost refusing accepting more than 64 memory regions.
It's only host kernel side fix to make it work with QEMU
versions that support memory hotplug. But I'll continue
to work on QEMU side solution to reduce amount of memory
regions to make things even better.
Performance wise for guest with (in my case 3 memory regions)
and netperf's UDP_RR workload translate_desc() execution
time from total workload takes:
Memory |1G RAM|cached|non cached
regions # | 3 | 53 | 53
------------------------------------
upstream | 0.3% | - | 3.5%
------------------------------------
this series | 0.2% | 0.5% | 0.7%
where "non cached" column reflects trashing wokload
with constant cache miss. More details on timing in
respective patches.
Igor Mammedov (6):
vhost: use binary search instead of linear in find_region()
vhost: extend memory regions allocation to vmalloc
vhost: add per VQ memory region caching
vhost: translate_desc: optimization for desc.len < region size
vhost: add 'translation_cache' module parameter
vhost: support upto 509 memory regions
drivers/vhost/vhost.c | 105 ++++++++++++++++++++++++++++++++++++++------------
drivers/vhost/vhost.h | 1 +
2 files changed, 82 insertions(+), 24 deletions(-)
--
1.8.3.1
next reply other threads:[~2015-06-17 13:15 UTC|newest]
Thread overview: 7+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-06-17 13:14 Igor Mammedov [this message]
2015-06-17 13:14 ` [PATCH v2 1/6] vhost: use binary search instead of linear in find_region() Igor Mammedov
2015-06-17 13:14 ` [PATCH v2 2/6] vhost: extend memory regions allocation to vmalloc Igor Mammedov
2015-06-17 13:14 ` [PATCH v2 3/6] vhost: add per VQ memory region caching Igor Mammedov
2015-06-17 13:14 ` [PATCH v2 4/6] vhost: translate_desc: optimization for desc.len < region size Igor Mammedov
2015-06-17 13:14 ` [PATCH v2 5/6] vhost: add 'translation_cache' module parameter Igor Mammedov
2015-06-17 13:14 ` [PATCH v2 6/6] vhost: support upto 509 memory regions Igor Mammedov
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1434546899-5296-1-git-send-email-imammedo@redhat.com \
--to=imammedo@redhat.com \
--cc=andrey@xdel.ru \
--cc=digitaleric@google.com \
--cc=kvm@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=mst@redhat.com \
--cc=pbonzini@redhat.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
all inboxes | Powered by JetHome®