qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Qemu-devel] Re: [PATCH 1/3] NUMA: add -numa command line option


From: Andre Przywara
Subject: [Qemu-devel] Re: [PATCH 1/3] NUMA: add -numa command line option
Date: Sat, 13 Dec 2008 18:12:36 +0100
User-agent: Thunderbird 2.0.0.14 (X11/20080421)

Anthony Liguori wrote:
Andre Przywara wrote:
This adds and parses a -numa command line option to QEMU.
...
+
+#define MAX_NODES 64
+extern int numnumanodes;
+extern uint64_t hostnodes[MAX_NODES];

This should not be in this patch. This patch should just contain the bits needed to create a virtual guest NUMA topology. The hostnode stuff should be a separate patch.
Agreed. I now moved the firmware interface parts of patch 2 into this one, so that you have full functionality with this first patch already (except host pinning and the BIOS part). Shall I move the 'info numa' part of the monitor also into this one or do you prefer smaller patches?

@@ -3968,6 +3972,10 @@ static void help(int exitcode)
        "-daemonize      daemonize QEMU after initializing\n"
 #endif
        "-option-rom rom load a file, rom, into the option ROM space\n"
+ "-numa nrnodes[,mem:size1[;size2..]][,cpu:cpu1[;cpu2..]][,pin:node1[;node2]]\n" + " create a multi NUMA node guest and optionally pin it to\n" + " to the given host nodes. If mem and cpu are omitted,\n"
+           "                resources are split equally\n"

You're whitespace damaged.
Actually the damage here is in the three lines before, which start with a leading tab. All other help lines are formatted like my ones. Do you want me to send whitespace fixes for this? Before or after the NUMA part?

+    if (numnumanodes > 0) {
+        int i;
+
+        if (numnumanodes > smp_cpus)
+            numnumanodes = smp_cpus;

Why have this limitation? We would like to see CPU-less nodes supported either as memory-only nodes or as IO nodes.
I introduced this after some tests, which made Linux crash. Honestly I don't remember the exact behavior or the error message anymore, but I will do some research again.

Which leads me to the question of how to plan on describing which nodes have what hardware?
Do you mean peripheral devices? Like multiple southbridges connected to different NUMA nodes? I don't think that this kind of emulation is needed for QEMU, beside that this is out of scope for the ACPI tables.
If you meant this, I can elaborate on this. If not, please explain.

Regards,
Andre.

--
Andre Przywara
AMD-Operating System Research Center (OSRC), Dresden, Germany
Tel: +49 351 277-84917
----to satisfy European Law for business letters:
AMD Saxony Limited Liability Company & Co. KG,
Wilschdorfer Landstr. 101, 01109 Dresden, Germany
Register Court Dresden: HRA 4896, General Partner authorized
to represent: AMD Saxony LLC (Wilmington, Delaware, US)
General Manager of AMD Saxony LLC: Dr. Hans-R. Deppe, Thomas McCoy





reply via email to

[Prev in Thread] Current Thread [Next in Thread]