From 8c52333c945b27b292243763ad2d2d21164281ae Mon Sep 17 00:00:00 2001 From: Ngairangbam Mili Date: Mon, 15 Jan 2024 07:00:42 +0000 Subject: [PATCH] Explain system host-cpu-modify behaviour (r8, dsr8MR3, dsr8MR2+,r9 ) Added steps for configuring CPU core assignments using CLI Change-Id: If88f922aba739ef835b29a16aa96d88bacc69183 Signed-off-by: Ngairangbam Mili --- ...ore-assignments-using-cli-96ee12bdfc83.rst | 79 +++++++++++++++++++ .../configuring-cpu-core-assignments.rst | 6 +- .../index-node-mgmt-kub-5ff5993b9c60.rst | 1 + 3 files changed, 83 insertions(+), 3 deletions(-) create mode 100644 doc/source/node_management/kubernetes/configuring_cpu_core_assignments/configuring-cpu-core-assignments-using-cli-96ee12bdfc83.rst diff --git a/doc/source/node_management/kubernetes/configuring_cpu_core_assignments/configuring-cpu-core-assignments-using-cli-96ee12bdfc83.rst b/doc/source/node_management/kubernetes/configuring_cpu_core_assignments/configuring-cpu-core-assignments-using-cli-96ee12bdfc83.rst new file mode 100644 index 000000000..045aef7ca --- /dev/null +++ b/doc/source/node_management/kubernetes/configuring_cpu_core_assignments/configuring-cpu-core-assignments-using-cli-96ee12bdfc83.rst @@ -0,0 +1,79 @@ +.. _configuring-cpu-core-assignments-using-cli-96ee12bdfc83: + +========================================== +Configuring CPU Core Assignments Using CLI +========================================== + +You can improve the performance and capacity of specific functions by assigning +more CPU cores using the following command: + +.. code-block:: none + + [sysadmin@controller-0 ~(keystone_admin)]$ system host-cpu-modify [--nowrap] -f [-c ] [-p0 ] [-p1 ] [-p2 ] [-p3 ] + +``function`` + +Use this command with the ``-f`` argument, which specifies the function, such +as **platform** and **application-isolated** whose core count is to be modified. + +.. note:: + + Any core that is not specified as one of these functions will be considered + as an application core. + +**Platform** + You can reserve one or more cores per |NUMA| node for platform use. + One core on each host is required to run the operating system and + associated services. For a combined controller and worker node in a + |prod| |AIO-SX| or |AIO-DX| configuration, two cores are required. + + The ability to assign platform cores to specific |NUMA| nodes offers + increased flexibility for high-performance configurations. For example, you + can dedicate certain |NUMA| nodes for platform use such that other |NUMA| + nodes that service |IRQ| requests are available for the containers (hosted + applications) that require high-performance |IRQ| servicing. + + .. note:: + + If you plan on running the |prefix|-openstack application on an + |AIO-SX| or |AIO-DX| deployment, at least 4 platform cores are required + for adequate Horizon Web Interface and CLI performance and 6 platform + cores are recommended. + +**Application-isolated** + You can isolate a core from the host process scheduler by specifying the + **application-isolated** function. This minimizes interruptions by other tasks to ensure + more predictable latency. + + .. note:: + + The tasks on the isolated cores will not be automatically load-balanced + by the Linux task scheduler. Thus, it is up to the application to affine + tasks appropriately. + +``cpulist`` + +Use this option with the ``-c`` argument. This option specifies an explicit list of CPUs. + +.. note:: + + Only one CPU function can be specified with the ``-c`` option. The ``c`` option + must be used in the final call to :command:`system host-cpu-modify`. Unlike specifying + by core counts, when using the ``-c`` option, sysinv will not automatically add + in any unspecified |SMT| hyperthreads if the host has hyperthreading enabled. + It is up to the caller to ensure that all sibling threads are included in the CPU list. + +``num_cores_on_processor`` + +Use this option with the ``-pX`` argument where ``X`` represents the NUMA +node whose count you want to modify. Multiple unique ``-pX`` arguments may be +specified, with a core count for each NUMA node. + +``hostnameorid`` + +This is the name or ID of a host. + + + + + diff --git a/doc/source/node_management/kubernetes/configuring_cpu_core_assignments/configuring-cpu-core-assignments.rst b/doc/source/node_management/kubernetes/configuring_cpu_core_assignments/configuring-cpu-core-assignments.rst index eb3de9fdf..83fb624cc 100644 --- a/doc/source/node_management/kubernetes/configuring_cpu_core_assignments/configuring-cpu-core-assignments.rst +++ b/doc/source/node_management/kubernetes/configuring_cpu_core_assignments/configuring-cpu-core-assignments.rst @@ -2,9 +2,9 @@ .. epz1565872908287 .. _configuring-cpu-core-assignments: -============================== -Configure CPU Core Assignments -============================== +============================================ +Configure CPU Core Assignments Using Horizon +============================================ You can improve the performance and capacity of specific functions by assigning them more CPU cores from the Horizon Web interface. diff --git a/doc/source/node_management/kubernetes/index-node-mgmt-kub-5ff5993b9c60.rst b/doc/source/node_management/kubernetes/index-node-mgmt-kub-5ff5993b9c60.rst index c5d5ece8c..bbaaefb00 100644 --- a/doc/source/node_management/kubernetes/index-node-mgmt-kub-5ff5993b9c60.rst +++ b/doc/source/node_management/kubernetes/index-node-mgmt-kub-5ff5993b9c60.rst @@ -96,6 +96,7 @@ Configuring CPU core behaviour :maxdepth: 1 configuring_cpu_core_assignments/configuring-cpu-core-assignments + configuring_cpu_core_assignments/configuring-cpu-core-assignments-using-cli-96ee12bdfc83 configuring_cpu_core_assignments/changing-the-hyper-threading-status host-cpu-mhz-parameters-configuration-d9ccf907ede0 single-physical-core-for-platform-function-in-all-in-one-deployments-bec61d5a13f4