Commit Message

From: "Michael R. Hines" <mrhines@us.ibm.com>
This capability allows you to disable dynamic chunk registration
for better throughput on high-performance links.
For example, using an 8GB RAM virtual machine with all 8GB of memory in
active use and the VM itself is completely idle using a 40 gbps infiniband link:
1. x-pin-all disabled total time: approximately 7.5 seconds @ 9.5 Gbps
2. x-pin-all enabled total time: approximately 4 seconds @ 26 Gbps
These numbers would of course scale up to whatever size virtual machine
you have to migrate using RDMA.
Enabling this feature does *not* have any measurable affect on
migration *downtime*. This is because, without this feature, all of the
memory will have already been registered already in advance during
the bulk round and does not need to be re-registered during the successive
iteration rounds.
Signed-off-by: Michael R. Hines <mrhines@us.ibm.com>
---
include/migration/migration.h | 2 ++
migration.c | 9 +++++++++
qapi-schema.json | 7 ++++++-
3 files changed, 17 insertions(+), 1 deletion(-)

Comments

On 04/21/2013 03:17 PM, mrhines@linux.vnet.ibm.com wrote:
> From: "Michael R. Hines" <mrhines@us.ibm.com>> > This capability allows you to disable dynamic chunk registration> for better throughput on high-performance links.> > For example, using an 8GB RAM virtual machine with all 8GB of memory in> active use and the VM itself is completely idle using a 40 gbps infiniband link:> > 1. x-pin-all disabled total time: approximately 7.5 seconds @ 9.5 Gbps> 2. x-pin-all enabled total time: approximately 4 seconds @ 26 Gbps
Naming here doesn't match the actual bit name; but it is obvious enough
to know what you meant.
Thanks for doing this, by the way - the default-to-disabled is a bit
nicer to manage from libvirt's perspective.
> > These numbers would of course scale up to whatever size virtual machine> you have to migrate using RDMA.> > Enabling this feature does *not* have any measurable affect on> migration *downtime*. This is because, without this feature, all of the> memory will have already been registered already in advance during> the bulk round and does not need to be re-registered during the successive> iteration rounds.> > Signed-off-by: Michael R. Hines <mrhines@us.ibm.com>> ---> include/migration/migration.h | 2 ++> migration.c | 9 +++++++++> qapi-schema.json | 7 ++++++-> 3 files changed, 17 insertions(+), 1 deletion(-)
> +++ b/qapi-schema.json> @@ -602,10 +602,15 @@> # This feature allows us to minimize migration traffic for certain work> # loads, by sending compressed difference of the pages> #> +# @x-rdma-pin-all: (since 1.5) Controls whether or not the entire VM memory footprint is
Trailing whitespace, and line longer than 80 columns. You ought to
rewrap this, and make sure it passes checkpatch.pl.
But since that is whitespace-only, feel free to add:
Reviewed-by: Eric Blake <eblake@redhat.com>

On 04/22/2013 04:24 PM, Eric Blake wrote:
> On 04/21/2013 03:17 PM, mrhines@linux.vnet.ibm.com wrote:>> From: "Michael R. Hines" <mrhines@us.ibm.com>>>>> This capability allows you to disable dynamic chunk registration>> for better throughput on high-performance links.>>>> For example, using an 8GB RAM virtual machine with all 8GB of memory in>> active use and the VM itself is completely idle using a 40 gbps infiniband link:>>>> 1. x-pin-all disabled total time: approximately 7.5 seconds @ 9.5 Gbps>> 2. x-pin-all enabled total time: approximately 4 seconds @ 26 Gbps> Naming here doesn't match the actual bit name; but it is obvious enough> to know what you meant.>> Thanks for doing this, by the way - the default-to-disabled is a bit> nicer to manage from libvirt's perspective.>>> These numbers would of course scale up to whatever size virtual machine>> you have to migrate using RDMA.>>>> Enabling this feature does *not* have any measurable affect on>> migration *downtime*. This is because, without this feature, all of the>> memory will have already been registered already in advance during>> the bulk round and does not need to be re-registered during the successive>> iteration rounds.>>>> Signed-off-by: Michael R. Hines <mrhines@us.ibm.com>>> --->> include/migration/migration.h | 2 ++>> migration.c | 9 +++++++++>> qapi-schema.json | 7 ++++++->> 3 files changed, 17 insertions(+), 1 deletion(-)>>> +++ b/qapi-schema.json>> @@ -602,10 +602,15 @@>> # This feature allows us to minimize migration traffic for certain work>> # loads, by sending compressed difference of the pages>> #>> +# @x-rdma-pin-all: (since 1.5) Controls whether or not the entire VM memory footprint is> Trailing whitespace, and line longer than 80 columns. You ought to> rewrap this, and make sure it passes checkpatch.pl.>> But since that is whitespace-only, feel free to add:>> Reviewed-by: Eric Blake <eblake@redhat.com>>
Acknowledged.