[dpdk-dev] [PATCH v2 1/9] net/hns3: support runtime config to select IO burst func
Ferruh Yigit
ferruh.yigit at intel.com
Thu Mar 11 18:39:43 CET 2021
On 3/10/2021 6:16 AM, Min Hu (Connor) wrote:
> From: Chengwen Feng <fengchengwen at huawei.com>
>
> Currently, the driver support multiple IO burst function and auto
> selection of the most appropriate function based on offload
> configuration.
>
> Most applications such as l2fwd/l3fwd don't provide the means to
> change offload configuration, so it will use the auto selection's io
> burst function.
>
> This patch support runtime config to select io burst function, which
> add two config: rx_func_hint and tx_func_hint, both could assign
> vec/sve/simple/common.
>
> The driver will use the following rules to select io burst func:
> a. if hint equal vec and meet the vec Rx/Tx usage condition then use
> the neon function.
> b. if hint equal sve and meet the sve Rx/Tx usage condition then use
> the sve function.
> c. if hint equal simple and meet the simple Rx/Tx usage condition then
> use the simple function.
> d. if hint equal common then use the common function.
> e. if hint not set then:
> e.1. if meet the vec Rx/Tx usage condition then use the neon function.
> e.2. if meet the simple Rx/Tx usage condition then use the simple
> function.
> e.3. else use the common function.
>
> Note: the sve Rx/Tx usage condition based on the vec Rx/Tx usage
> condition and runtime environment (which must support SVE).
>
> In the previous versions, driver will preferred use the sve function
> when meet the sve Rx/Tx usage condition, but in this case driver could
> get better performance if use the neon function.
>
> Signed-off-by: Chengwen Feng <fengchengwen at huawei.com>
> Signed-off-by: Min Hu (Connor) <humin29 at huawei.com>
<...>
> +
> + rte_kvargs_process(kvlist, "rx_func_hint", &hns3_parse_io_hint_func,
> + &rx_func_hint);
> + rte_kvargs_process(kvlist, "tx_func_hint", &hns3_parse_io_hint_func,
> + &tx_func_hint);
> + rte_kvargs_free(kvlist);
If you will continue with the device argument method, those should be documented
in the device documentation, you can have a section as "Runtime Config Options"
and can detail new devargs there.
Also 'RTE_PMD_REGISTER_PARAM_STRING' should be added for new devargs.
More information about the dev
mailing list