[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH] qemu-options.hx: Update descriptions of memory options for N
From: |
Yohei Kojima |
Subject: |
Re: [PATCH] qemu-options.hx: Update descriptions of memory options for NUMA node |
Date: |
Tue, 11 Apr 2023 19:59:19 +0900 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.9.1 |
ping
This patch updates an outdated description in qemu-options.hx .
The patch reflects the changes in qemu behavior already described in
another documentation, and it also changes paragraph structure for
further readability.
The original patch is:
https://patchew.org/QEMU/TYZPR06MB5418D6B0175A49E8E76988439D8E9@TYZPR06MB5418.apcprd06.prod.outlook.com/
On 2023/03/30 19:09, Yohei Kojima wrote:
> This commit adds the following description:
> 1. `memdev` option is recommended over `mem` option (see [1,2])
> 2. users must specify memory for all NUMA nodes (see [2])
>
> This commit also separates descriptions for `mem` and `memdev` into two
> paragraphs. The old doc describes legacy `mem` option first, and it was
> a bit confusing.
>
> Related documantations:
> [1] https://wiki.qemu.org/ChangeLog/5.1#Incompatible_changes
> [2] https://www.qemu.org/docs/master/about/removed-features.html
>
> Signed-off-by: Yohei Kojima <y-koj@outlook.jp>
> ---
> qemu-options.hx | 25 ++++++++++++++++---------
> 1 file changed, 16 insertions(+), 9 deletions(-)
>
> diff --git a/qemu-options.hx b/qemu-options.hx
> index 59bdf67a2c..174f0d0c2d 100644
> --- a/qemu-options.hx
> +++ b/qemu-options.hx
> @@ -405,15 +405,22 @@ SRST
> -numa node,nodeid=0 -numa node,nodeid=1 \
> -numa cpu,node-id=0,socket-id=0 -numa cpu,node-id=1,socket-id=1
>
> - Legacy '\ ``mem``\ ' assigns a given RAM amount to a node (not supported
> - for 5.1 and newer machine types). '\ ``memdev``\ ' assigns RAM from
> - a given memory backend device to a node. If '\ ``mem``\ ' and
> - '\ ``memdev``\ ' are omitted in all nodes, RAM is split equally between
> them.
> -
> -
> - '\ ``mem``\ ' and '\ ``memdev``\ ' are mutually exclusive.
> - Furthermore, if one node uses '\ ``memdev``\ ', all of them have to
> - use it.
> + '\ ``memdev``\ ' option assigns RAM from a given memory backend
> + device to a node. It is recommended to use '\ ``memdev``\ ' option
> + over legacy '\ ``mem``\ ' option. This is because '\ ``memdev``\ '
> + option provides better performance and more control over the
> + backend's RAM (e.g. '\ ``prealloc``\ ' parameter of
> + '\ ``-memory-backend-ram``\ ' allows memory preallocation).
> +
> + For compatibility reasons, legacy '\ ``mem``\ ' option is
> + supported in 5.0 and older machine types. Note that '\ ``mem``\ '
> + and '\ ``memdev``\ ' are mutually exclusive. If one node uses
> + '\ ``memdev``\ ', the rest nodes have to use '\ ``memdev``\ '
> + option, and vice versa.
> +
> + Users must specify memory for all NUMA nodes by '\ ``memdev``\ '
> + (or legacy '\ ``mem``\ ' if available). In QEMU 5.2, the support
> + for '\ ``-numa node``\ ' without memory specified was removed.
>
> '\ ``initiator``\ ' is an additional option that points to an
> initiator NUMA node that has best performance (the lowest latency or