[libvirt] [RFC PATCH 00/10] use cpuset to manage numa

Hu Tao hutao at cn.fujitsu.com
Thu Nov 3 11:55:15 UTC 2011


The goal of this series is to use cpuset to manage numa. Currently numa tuning
is achieved by libnuma, the disadvantage is numa parameters can not be modified
when the domain is running. By using cpuset, we can do this and more:

  - a new command, numatune, to get/set numa parameters
  - cpuset can migrate pages to new nodes if a domain's numa nodes is changed
    when running

This is a draft for early reviews. Comments are welcome.

TODO:

 - add --migrate option to numatune
 - docs for numatune

Hu Tao (10):
  enable cgroup cpuset by default
  Add functions to set/get cpuset parameters
  use cpuset to manage numa
  remove dependence on libnuma
  new numa parameters
  add new API virDomain{G,S}etNumaParameters
  Implement main entries of virDomain{G,S}etNumaParameters
  Add virDomain{G,S}etNumaParameters support to the remote driver
  Implement virDomain{G,S}etNumaParameters for the qemu driver
  add new command numatune to virsh

 daemon/remote.c              |   63 +++++++++
 include/libvirt/libvirt.h.in |   23 +++
 python/generator.py          |    2 +
 src/conf/domain_conf.c       |   35 ++---
 src/conf/domain_conf.h       |    3 +-
 src/driver.h                 |   15 ++
 src/libvirt.c                |  106 +++++++++++++++
 src/libvirt_private.syms     |    6 +
 src/libvirt_public.syms      |    6 +
 src/qemu/qemu.conf           |    5 +-
 src/qemu/qemu_cgroup.c       |   37 +++++
 src/qemu/qemu_conf.c         |    3 +-
 src/qemu/qemu_driver.c       |  307 ++++++++++++++++++++++++++++++++++++++++++
 src/qemu/qemu_process.c      |  111 ---------------
 src/remote/remote_driver.c   |   50 +++++++
 src/remote/remote_protocol.x |   25 ++++-
 src/remote_protocol-structs  |   16 +++
 src/util/cgroup.c            |   80 +++++++++++
 src/util/cgroup.h            |    7 +
 tools/virsh.c                |  187 +++++++++++++++++++++++++
 20 files changed, 950 insertions(+), 137 deletions(-)

-- 
1.7.3.1




More information about the libvir-list mailing list