On 02/21/2017 10:49 AM, Jan Scheurich wrote:
>> -----Original Message-----
>> From: Kevin Traynor [mailto:ktray...@redhat.com]
>> Sent: Friday, 17 February, 2017 17:38
>> 
>> If there are multiple queues in a poll list and only one has packets,
>> the cycles polling the empty queues for packets will be counted in the
>> processing time - whereas you'd expect them to be in the idle time.
>> 
>> Is there much of a performance hit if the cycle_count_intermediate() is
>> moved into the poll_cnt loop? OTOH, how much would the idle queues skew
>> the counters? If it's a small amount it may be better than doing a
>> cycle_count per q.
>  
> In our testing an idle iteration over 8 vhostuser and one eth port
> consumes on average 600 cycles, i.e. ~60 cycles per port. Compared to
> the typical cost for processing a packet in the range of 1000 cycles,
> the overhead of polling idle queues is not significant, unless a PMD
> were to poll hundreds of queues. Also we have seen that an rte_rdtsc()
> call can cost up to 20 cycles.
>  

Hi Ciara/Jan,

Thanks for the additional info. Considering this is just a helpful user
stat and both options do not significantly skew performance or the stat,
either way sounds ok to me. We can always change internally in the
future if we need to.

Kevin.
_______________________________________________
dev mailing list
d...@openvswitch.org
https://mail.openvswitch.org/mailman/listinfo/ovs-dev

Reply via email to