aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPeter Maydell <peter.maydell@linaro.org>2017-03-03 14:59:45 +0000
committerPeter Maydell <peter.maydell@linaro.org>2017-03-03 14:59:45 +0000
commit5b10b94bd53229540b088342015d69bc5ef2cc1d (patch)
tree449de9877cdd3bf2dbc82d01c89281a67bd9fed4
parent9a17d32721ddd5e6ec9e791bf960d32a7ac6327b (diff)
parent4b9a5dd762ae41acd7df741de3e554b319a2cced (diff)
downloadqemu-5b10b94bd53229540b088342015d69bc5ef2cc1d.zip
qemu-5b10b94bd53229540b088342015d69bc5ef2cc1d.tar.gz
qemu-5b10b94bd53229540b088342015d69bc5ef2cc1d.tar.bz2
Merge remote-tracking branch 'remotes/ehabkost/tags/numa-pull-request' into staging
NUMA documentation update # gpg: Signature made Fri 03 Mar 2017 13:11:25 GMT # gpg: using RSA key 0x2807936F984DC5A6 # gpg: Good signature from "Eduardo Habkost <ehabkost@redhat.com>" # Primary key fingerprint: 5A32 2FD5 ABC4 D3DB ACCF D1AA 2807 936F 984D C5A6 * remotes/ehabkost/tags/numa-pull-request: qemu-options: Rewrite -numa documentation Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
-rw-r--r--qemu-options.hx38
1 files changed, 28 insertions, 10 deletions
diff --git a/qemu-options.hx b/qemu-options.hx
index c85f77d..2292438 100644
--- a/qemu-options.hx
+++ b/qemu-options.hx
@@ -144,16 +144,34 @@ STEXI
@item -numa node[,mem=@var{size}][,cpus=@var{firstcpu}[-@var{lastcpu}]][,nodeid=@var{node}]
@itemx -numa node[,memdev=@var{id}][,cpus=@var{firstcpu}[-@var{lastcpu}]][,nodeid=@var{node}]
@findex -numa
-Simulate a multi node NUMA system. If @samp{mem}, @samp{memdev}
-and @samp{cpus} are omitted, resources are split equally. Also, note
-that the -@option{numa} option doesn't allocate any of the specified
-resources. That is, it just assigns existing resources to NUMA nodes. This
-means that one still has to use the @option{-m}, @option{-smp} options
-to allocate RAM and VCPUs respectively, and possibly @option{-object}
-to specify the memory backend for the @samp{memdev} suboption.
-
-@samp{mem} and @samp{memdev} are mutually exclusive. Furthermore, if one
-node uses @samp{memdev}, all of them have to use it.
+Define a NUMA node and assign RAM and VCPUs to it.
+
+@var{firstcpu} and @var{lastcpu} are CPU indexes. Each
+@samp{cpus} option represent a contiguous range of CPU indexes
+(or a single VCPU if @var{lastcpu} is omitted). A non-contiguous
+set of VCPUs can be represented by providing multiple @samp{cpus}
+options. If @samp{cpus} is omitted on all nodes, VCPUs are automatically
+split between them.
+
+For example, the following option assigns VCPUs 0, 1, 2 and 5 to
+a NUMA node:
+@example
+-numa node,cpus=0-2,cpus=5
+@end example
+
+@samp{mem} assigns a given RAM amount to a node. @samp{memdev}
+assigns RAM from a given memory backend device to a node. If
+@samp{mem} and @samp{memdev} are omitted in all nodes, RAM is
+split equally between them.
+
+@samp{mem} and @samp{memdev} are mutually exclusive. Furthermore,
+if one node uses @samp{memdev}, all of them have to use it.
+
+Note that the -@option{numa} option doesn't allocate any of the
+specified resources, it just assigns existing resources to NUMA
+nodes. This means that one still has to use the @option{-m},
+@option{-smp} options to allocate RAM and VCPUs respectively.
+
ETEXI
DEF("add-fd", HAS_ARG, QEMU_OPTION_add_fd,