Message ID | 1606048553-16127-1-git-send-email-asafp@nvidia.com (mailing list archive) |
---|---|
State | Superseded, archived |
Delegated to: | Raslan Darawsheh |
Headers | show |
Series | doc: add information for Rx burst functions in mlx5 | expand |
Context | Check | Description |
---|---|---|
ci/checkpatch | success | coding style OK |
ci/Intel-compilation | fail | Compilation issues |
ci/travis-robot | warning | Travis build: failed |
Hi, Asaf There is one more devargs to manage MPRQ enable: "rxqs_min_mprq". This parameters defines the number of Rx queues limit to enable MPRQ. If there is not enough Rx queues (below the limit) then MPRQ is disabled. By default, "rxqs_min_mprq" is 12. I suppose we should mention this in the list being added. With best regards, Slava > -----Original Message----- > From: Asaf Penso <asafp@nvidia.com> > Sent: Sunday, November 22, 2020 14:36 > To: dev@dpdk.org > Cc: NBU-Contact-Thomas Monjalon <thomas@monjalon.net>; Slava Ovsiienko > <viacheslavo@nvidia.com>; Matan Azrad <matan@nvidia.com>; Raslan > Darawsheh <rasland@nvidia.com> > Subject: [PATCH] doc: add information for Rx burst functions in mlx5 > > mlx5 pmd supports various rx_burst functions. > Each function is enabled differently and supports different features. > > Add more comprehensive information about each function. > > Signed-off-by: Asaf Penso <asafp@nvidia.com> > --- > doc/guides/nics/mlx5.rst | 55 > ++++++++++++++++++++++++++++++++++++++++++++++++ > 1 file changed, 55 insertions(+) > > diff --git a/doc/guides/nics/mlx5.rst b/doc/guides/nics/mlx5.rst index > 205e5ba..8c1ce15 100644 > --- a/doc/guides/nics/mlx5.rst > +++ b/doc/guides/nics/mlx5.rst > @@ -1645,3 +1645,58 @@ all flows with assistance of external tools. > .. code-block:: console > > mlx_steering_dump.py -f <output_file> > + > +RX burst functions > +------------------ > + > +This section describes the different rx_burst functions and provides an > +elaborated information. > + > +#. Function name - rx_burst > + How to enable - rx_vec_en=0 > + Scatter support - Yes > + RX error recovery support - Yes > + CQE compression support - Yes > + Large MTU support - The maximal packet size should be set to be the > + same as the MTU size. The mbuf size can be > + according to the application needs since the > + pmd can perform the scatter. > + > +#. Function name - rx_burst_vec > + How to enable - rx_vec_en=1 (default value) > + Scatter support - No > + RX error recovery support - Supported only in case CQE compression is off > + CQE compression support - Yes > + Large MTU support - No. Scatter is not supported, so it means > + that the mbuf must be with the same size of > + the MTU. In this case, maximal packet size == > + mbuf size == MTU size > + Fallback - In scatter or LRO fallback to rx_burst > + Notes - Improves CPU utilization for single-core and > + improves performance > + > +#. Function name - rx_burst_mprq > + How to enable - mprq_en=1 > + Scatter support - No > + RX error recovery support - Yes > + CQE compression support - Yes > + Large MTU support - Yes. Needs to be turned on by specifying the > + stride size > + Notes - Saving PCI bandwidth and getting higher > + performance, especially for small packets. > + Used mainly for multi-core use cases. > + Uses externally attached buffers only. > + > +#. Function name - rx_burst_mprq_vec > + How to enable - rx_vec_en=1 (default mode) and mprq_en=1 > + Scatter support - No > + RX error recovery support - Supported only in case CQE compression is off > + CQE compression support - Yes > + Large MTU support - Yes. Needs to be turned on by specifying the > + stride size > + Fallback - In scatter or LRO fallback to rx_burst_mprq > + Notes - Improves CPU utilization of regular > + rx_burst_mprq for multi-core and improves > + performance. > + Used mainly for multi-core use cases. > + Uses externally attached buffers only. > \ No newline at end of file > -- > 1.8.3.1
diff --git a/doc/guides/nics/mlx5.rst b/doc/guides/nics/mlx5.rst index 205e5ba..8c1ce15 100644 --- a/doc/guides/nics/mlx5.rst +++ b/doc/guides/nics/mlx5.rst @@ -1645,3 +1645,58 @@ all flows with assistance of external tools. .. code-block:: console mlx_steering_dump.py -f <output_file> + +RX burst functions +------------------ + +This section describes the different rx_burst functions and provides an +elaborated information. + +#. Function name - rx_burst + How to enable - rx_vec_en=0 + Scatter support - Yes + RX error recovery support - Yes + CQE compression support - Yes + Large MTU support - The maximal packet size should be set to be the + same as the MTU size. The mbuf size can be + according to the application needs since the + pmd can perform the scatter. + +#. Function name - rx_burst_vec + How to enable - rx_vec_en=1 (default value) + Scatter support - No + RX error recovery support - Supported only in case CQE compression is off + CQE compression support - Yes + Large MTU support - No. Scatter is not supported, so it means + that the mbuf must be with the same size of + the MTU. In this case, maximal packet size == + mbuf size == MTU size + Fallback - In scatter or LRO fallback to rx_burst + Notes - Improves CPU utilization for single-core and + improves performance + +#. Function name - rx_burst_mprq + How to enable - mprq_en=1 + Scatter support - No + RX error recovery support - Yes + CQE compression support - Yes + Large MTU support - Yes. Needs to be turned on by specifying the + stride size + Notes - Saving PCI bandwidth and getting higher + performance, especially for small packets. + Used mainly for multi-core use cases. + Uses externally attached buffers only. + +#. Function name - rx_burst_mprq_vec + How to enable - rx_vec_en=1 (default mode) and mprq_en=1 + Scatter support - No + RX error recovery support - Supported only in case CQE compression is off + CQE compression support - Yes + Large MTU support - Yes. Needs to be turned on by specifying the + stride size + Fallback - In scatter or LRO fallback to rx_burst_mprq + Notes - Improves CPU utilization of regular + rx_burst_mprq for multi-core and improves + performance. + Used mainly for multi-core use cases. + Uses externally attached buffers only. \ No newline at end of file
mlx5 pmd supports various rx_burst functions. Each function is enabled differently and supports different features. Add more comprehensive information about each function. Signed-off-by: Asaf Penso <asafp@nvidia.com> --- doc/guides/nics/mlx5.rst | 55 ++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 55 insertions(+)