Merge "Updated Examples for Application-isolated cores (r5, r6, dsr6, r7, dsr7, r8, dsr8)" into r/stx.5.0

This commit is contained in:
Zuul
2023-05-05 10:30:02 +00:00
committed by Gerrit Code Review

View File

@@ -2,9 +2,9 @@
.. bew1572888575258
.. _isolating-cpu-cores-to-enhance-application-performance:
========================================================
Isolate the CPU Cores to Enhance Application Performance
========================================================
====================================================
Isolate CPU Cores to Enhance Application Performance
====================================================
|prod| supports running the most critical low-latency applications on host CPUs
which are completely isolated from the host process scheduler.
@@ -26,6 +26,17 @@ For example:
~(keystone)admin)$ system host-cpu-modify -f application-isolated -p1 15 worker-1
~(keystone)admin)$ system host-unlock worker-1
.. note::
It is possible to explicitly specify 1 or more cores or a range of cores to
be application-isolated:
.. code-block::
~(keystone_admin)]$ system host-cpu-modify -f application-isolated -c 3 controller-0
~(keystone_admin)]$ system host-cpu-modify -f application-isolated -c 3,4 controller-0
~(keystone_admin)]$ system host-cpu-modify -f application-isolated -c 3-5 controller-0
All |SMT| siblings (hyperthreads, if enabled) on a core will have the same
assigned function. On host boot, any CPUs designated as isolated will be
specified as part of the isolcpus kernel boot argument, which will isolate them
@@ -33,9 +44,16 @@ from the process scheduler.
.. only:: partner
.. include:: /_includes/isolating-cpu-cores-to-enhance-application-performance.rest
:start-after: usage-limitation-begin
:end-before: usage-limitation-end
.. note::
|prod| isolcpus allocation is |SMT|-aware. If a container requests multiple
isolcpus it will provide |SMT| siblings to the extent possible. If an odd
number of isolcpus are requested it will provide as many |SMT| siblings as
are available, then allocate singletons whose sibling has already been
allocated, then allocate one sibling from a free |SMT| sibling pair. If
hyperthreading is enabled in the BIOS then containers should request isolcpus
in pairs. If all containers on a system do this then they will never have
different containers being allocated |SMT| siblings from the same core.
When using the static CPU manager policy before increasing the number of
platform CPUs or changing isolated CPUs to application CPUs on a host, ensure