[dpdk-dev] [PATCH v8] app/testpmd: support multi-process

Ferruh Yigit ferruh.yigit at intel.com
Tue Mar 30 12:19:52 CEST 2021


On 3/30/2021 7:41 AM, Min Hu (Connor) wrote:
> 
> 
> 在 2021/3/30 11:11, Ajit Khaparde 写道:
>> On Mon, Mar 29, 2021 at 6:48 PM Min Hu (Connor) <humin29 at huawei.com> wrote:
>>>
>>> From: Lijun Ou <oulijun at huawei.com>
>>>
>>> This patch adds multi-process support for testpmd.
>>> The test cmd example as follows:
>>> the primary cmd:
>>> ./dpdk-testpmd -a xxx --proc-type=auto -l 0-1 -- -i \
>>> --rxq=4 --txq=4 --num-procs=2 --proc-id=0
>>>
>>> the secondary cmd:
>>> ./dpdk-testpmd -a xxx --proc-type=auto -l 2-3 -- -i \
>>> --rxq=4 --txq=4 --num-procs=2 --proc-id=1
>>>
>>> Signed-off-by: Min Hu (Connor) <humin29 at huawei.com>
>>> Signed-off-by: Lijun Ou <oulijun at huawei.com>
>> Some minor nits below. Otherwise looks fine to me.
>> Acked-by: Ajit Khaparde <ajit.khaparde at broadcom.com>
>>
> Thanks Ajit.
> 
> Hi, Ferruh,
>      Should I send v9 to fix the grammar bugs in doc which Ajit point
> out or fix it in future?
> 

Hi Connor, if they are only outstanding issues, I can fix them while merging.

>>> ---
>>> v8:
>>> * Added warning info about queue numbers and process numbers.
>>>
>> :::snip::::
>>
>>> +*   ``--rxq=N``
>>> +
>>> +    Set the number of Rx queues per port to N. N is the sum of queues used 
>>> by primary
>>> +    and secondary process. Primary process and secondary process should have 
>>> separate
>>> +    queues, and each should occupy at least one queue. Where N should be the 
>>> multiple
>>> +    of number of processes.
>> of the number of processes.
>>
>>> +
>>> +*   ``--txq=N``
>>> +
>>> +    Set the number of Tx queues per port to N. N is the sum of queues used 
>>> by primary
>>> +    and secondary process. Primary process and secondary process should have 
>>> separate
>>> +    queues, and each should occupy at least one queue. Where N should be the 
>>> multiple
>>> +    of number of processes.
>> of the number of processes.
>>
>>> +
>>> +*   ``--num-procs=N``
>>> +
>>> +    The number of processes which will be used.
>>> +
>> :::: snip ::::
>>> +The number of rings should be a multiple of the number of processes. If not,
>>> +redundant queues will exist after queues are allocated to processes. After 
>>> RSS is
>>> +enabled, packet loss occurs when traffic is sent to all processes at the 
>>> same time.
>>> +Some traffic enters redundant queues and cannot be forwarded.
>>> +
>>> +Most dev ops is supported in primary and secondary process. While secondary 
>>> process
>> Most dev ops are supported in the primary and secondary process. While....
>>
>>> +is not permitted to allocate or release shared memory, so some ops are not 
>>> supported
>>> +as follows:
>>> +``dev_configure``
>>> +``dev_start``
>>> +``dev_stop``
>>> +``rx_queue_setup``
>>> +``tx_queue_setup``
>>> +``rx_queue_release``
>>> +``tx_queue_release``
>> :::: snip:::
>>



More information about the dev mailing list