[1/2] doc: add note about CPU 0

Message ID 20240718184326.21375-1-stephen@networkplumber.org (mailing list archive)
State Superseded, archived
Delegated to: Thomas Monjalon
Headers
Series [1/2] doc: add note about CPU 0 |

Checks

Context Check Description
ci/checkpatch success coding style OK

Commit Message

Stephen Hemminger July 18, 2024, 6:43 p.m. UTC
On Linux (and probably BSD), CPU 0 can not be fully isolated
because it receives timer interrupts and is used for other
kernel related functions. The DPDK documentation should
be updated to tell users to avoid polling on that CPU.

Signed-off-by: Stephen Hemminger <stephen@networkplumber.org>
---
 doc/guides/linux_gsg/enable_func.rst | 9 +++++++--
 1 file changed, 7 insertions(+), 2 deletions(-)
  

Comments

Thomas Monjalon July 29, 2024, 7:59 p.m. UTC | #1
18/07/2024 20:43, Stephen Hemminger:
> On Linux (and probably BSD), CPU 0 can not be fully isolated
> because it receives timer interrupts and is used for other
> kernel related functions. The DPDK documentation should
> be updated to tell users to avoid polling on that CPU.
> 
> Signed-off-by: Stephen Hemminger <stephen@networkplumber.org>
> ---
> +.. note::
> +
> +    It is not recommended to use CPU core 0 for DPDK polling applications
> +    because it can not be isolated from other system and kernel activity.

Indent should be 3 spaces.


>  For example, if a given CPU has 0-7 cores
> -and DPDK applications are to run on logical cores 2, 4 and 6,
> -the following should be added to the kernel parameter list:
> +and DPDK applications are to run on logical cores 2, 4 and 6.
> +The following should be added to the kernel parameter list:

I think it was better as 1 sentence with the comma.
  

Patch

diff --git a/doc/guides/linux_gsg/enable_func.rst b/doc/guides/linux_gsg/enable_func.rst
index 5511640cb8..dc33ffc718 100644
--- a/doc/guides/linux_gsg/enable_func.rst
+++ b/doc/guides/linux_gsg/enable_func.rst
@@ -131,9 +131,14 @@  from running on those cores, it is possible to use
 the Linux kernel parameters ``isolcpus``, ``nohz_full``, ``irqaffinity``
 to isolate them from the general Linux scheduler tasks.
 
+.. note::
+
+    It is not recommended to use CPU core 0 for DPDK polling applications
+    because it can not be isolated from other system and kernel activity.
+
 For example, if a given CPU has 0-7 cores
-and DPDK applications are to run on logical cores 2, 4 and 6,
-the following should be added to the kernel parameter list:
+and DPDK applications are to run on logical cores 2, 4 and 6.
+The following should be added to the kernel parameter list:
 
 .. code-block:: console