xen-devel.lists.xenproject.org archive mirror
 help / color / mirror / Atom feed
* [PATCH 0/2] Bulk mem-share identical domains
@ 2015-10-04 20:25 Tamas K Lengyel
  2015-10-04 20:25 ` [PATCH 1/2] x86/mem-sharing: Bulk mem-sharing entire domains Tamas K Lengyel
                   ` (2 more replies)
  0 siblings, 3 replies; 16+ messages in thread
From: Tamas K Lengyel @ 2015-10-04 20:25 UTC (permalink / raw)
  To: xen-devel
  Cc: Tamas K Lengyel, Wei Liu, Ian Campbell, Stefano Stabellini,
	George Dunlap, Andrew Cooper, Ian Jackson, Jan Beulich,
	Keir Fraser

The following patches add a convenience memop to the mem_sharing system,
allowing for the rapid deduplication of memory pages between identical domains.

The envisioned use-case for this is the following:
1) Create two domains from the same snapshot using xl.
   This step can also be performed by piping an existing domain's memory with
        "xl save -c <domain> <pipe> | xl restore -p <new_cfg> <pipe>"
   It is up for the user to create the appropriate configuration for the clone,
   including setting up a CoW-disk as well. 
2) Enable memory sharing on both domains
3) Execute bulk dedup between the domains.

Performing memory deduplication this way reduces the number of hypercalls that
need to be performed, thus significantly speeding up the operation.

The subsystem is currently orphaned and without a maintainer. AFAIK I'm the
only active user of this subsystem.

These patches are also available via git at
https://github.com/tklengyel/xen/tree/memshr_bulk

Cc: Ian Jackson <ian.jackson@eu.citrix.com>
Cc: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
Cc: Ian Campbell <ian.campbell@citrix.com>
Cc: Wei Liu <wei.liu2@citrix.com>
Cc: George Dunlap <george.dunlap@eu.citrix.com>
Cc: Keir Fraser <keir@xen.org>
Cc: Jan Beulich <jbeulich@suse.com>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>

Tamas K Lengyel (2):
  x86/mem-sharing: Bulk mem-sharing entire domains
  tests/mem-sharing: Add bulk option to memshrtool

 tools/libxc/include/xenctrl.h        | 11 +++++
 tools/libxc/xc_memshr.c              | 14 ++++++
 tools/tests/mem-sharing/memshrtool.c | 20 ++++++++
 xen/arch/x86/mm/mem_sharing.c        | 90 +++++++++++++++++++++++++++++++++++-
 xen/arch/x86/x86_64/compat/mm.c      |  6 ++-
 xen/arch/x86/x86_64/mm.c             |  6 ++-
 xen/include/asm-x86/mem_sharing.h    |  3 +-
 xen/include/public/memory.h          |  1 +
 8 files changed, 144 insertions(+), 7 deletions(-)

-- 
2.1.4

^ permalink raw reply	[flat|nested] 16+ messages in thread

end of thread, other threads:[~2015-10-09 12:35 UTC | newest]

Thread overview: 16+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2015-10-04 20:25 [PATCH 0/2] Bulk mem-share identical domains Tamas K Lengyel
2015-10-04 20:25 ` [PATCH 1/2] x86/mem-sharing: Bulk mem-sharing entire domains Tamas K Lengyel
2015-10-05 15:39   ` Andrew Cooper
2015-10-05 16:51     ` Tamas K Lengyel
2015-10-06  9:19   ` Wei Liu
2015-10-04 20:25 ` [PATCH 2/2] tests/mem-sharing: Add bulk option to memshrtool Tamas K Lengyel
2015-10-06  9:20   ` Wei Liu
2015-10-06 14:15     ` Ian Campbell
2015-10-06 16:17       ` Tamas K Lengyel
2015-10-06 14:26 ` [PATCH 0/2] Bulk mem-share identical domains Ian Campbell
2015-10-06 14:52   ` Andrew Cooper
2015-10-06 16:12     ` Tamas K Lengyel
2015-10-06 16:05   ` Tamas K Lengyel
2015-10-07 10:48     ` Wei Liu
2015-10-08 21:07       ` Tamas K Lengyel
2015-10-09 12:35         ` Wei Liu

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).