On 8 Jul 2021, at 14:11, Stokes, Ian wrote:

>>> -----Original Message-----
>>> From: Eelco Chaudron <[email protected]>
>>> Sent: Thursday, July 8, 2021 11:48 AM
>>> To: Ferriter, Cian <[email protected]>
>>> Cc: [email protected]; [email protected]; [email protected]; Van
>>> Haaren, Harry <[email protected]>; Amber, Kumar
>>> <[email protected]>; Stokes, Ian <[email protected]>
>>> Subject: Re: [v6 06/11] dpif-netdev: Add packet count and core id paramters
>> for
>>> study
>>>
>>> On 6 Jul 2021, at 15:11, Cian Ferriter wrote:
>>>
>>>> From: Kumar Amber <[email protected]>
>>>>
>>>> This commit introduces additional command line paramter
>>>> for mfex study function. If user provides additional packet out
>>>> it is used in study to compare minimum packets which must be processed
>>>> else a default value is choosen.
>>>> Also introduces a third paramter for choosing a particular pmd core.
>>>>
>>>> $ ovs-appctl dpif-netdev/miniflow-parser-set study 500 3
>>>>
>>>> Signed-off-by: Kumar Amber <[email protected]>
>>>
>>>
>>> When doing some testing I ran into another corner case. If I start one PMD
>> with
>>> packet count 1000, and then another with packet count 10. Both will use 10,
>> as
>>> the packet count value, as is stored globally.
>>
>> Valid corner case, good point, indeed the value is stored globally.
>>
>> The packet-count for study was designed/added as a way to avoid studying
>> too many (overhead) or too few (inaccuracy) packets. I'm not sure how useful
>> it *actually is* in real-world.
>>
>> Would documenting "the per packet count" is a global value, and parallel
>> `study()`
>> executions with differing packet counts will use the most recent count 
>> value" be
>> acceptable?
>
> +1 to this, as a initial step I think this would be ok, it can change if 
> required in the future based on feedback from deployment.
> We've seen similar approaches to features such as RXQ load balancing in OVS 
> using global values for sample time periods, I believe this is a similar case.

As this looks similar, it’s not, as for load balancing it's a global 
configuration option. In this case, a specific PMD is configured, but it 
changes the behavior for all PMDs.

I think, for now, we can do with documenting it. In the future, a solution 
could be to make it a per-thread variable.

>>
>> In any given scenario, I expect the "pkt_cnt" value to be the same for all 
>> PMD
>> threads as variance in traffic is likely to be constant for all PMD-threads
>> (particularly
>> since auto-load-balancing of rxq/pmds is being improved). A single global 
>> value
>> being
>> used covers all my known use-cases.
>>
>> Thoughts?
>>
>>>> ---
>>> < SNIP>
>>

_______________________________________________
dev mailing list
[email protected]
https://mail.openvswitch.org/mailman/listinfo/ovs-dev

Reply via email to