Hi Krish,
You will need to compile with debug info and also with in-lining turned off.
Many functions get in-lined and in that case the perf report cannot attribute
time to the in-lined function but only to the caller. Obviously performance
overall drops in that case but the relative cost of each function should not be
affected.
You should also checkout Brendan Gregg’s flame graphs
http://www.brendangregg.com/flamegraphs.html as a visualization of cpu cost.
If you are using dpdk-ovs then you should pin the PMD to an isolated core and
use perf to sample the call stack on that core only. Details of pinning &
isolation are in the dpdk sections of the ovs documentation.
I have not run perf on kernel OvS. That would be a matter of using the correct
flags to sample by kernel module or thread.
You will need to be reasonably familiar with the code in order to interpret the
results. These are some blog posts on the EMC and netdev datapath classifier
for OvS-DPDK :
https://software.intel.com/en-us/articles/the-open-vswitch-exact-match-cache
https://software.intel.com/en-us/articles/ovs-dpdk-datapath-classifier
Again for OvS-DPDK you could also use the output from ovs-appctl
dpcls/pmd-stats-show. By using a very small number of flows you can ensure that
your traffic his hitting the EMC and you can measure the EMC lookup cost. Then
you can disable the EMC (using emc-insert-inv-prob setting) and measure the
classifier lookup cost. Be aware those cost include the rx and tx costs which
actually decrease as traffic increases – as the packet batch size increases
leadings to lower per-packet tx/rx cost.
Regards,
Billy.
From: ovs-discuss-boun...@openvswitch.org
[mailto:ovs-discuss-boun...@openvswitch.org] On Behalf Of Krish
Sent: Thursday, March 15, 2018 2:52 AM
To: Justin Pettit ; Greg Rose ;
ovs-discuss@openvswitch.org
Subject: Re: [ovs-discuss] Way to get average time spent
Justin
Thanks for telling me about perf tool. I think its a really good tool for
finding hotspots. But I don't know how to test OVS caches with the perf tool.
Greg
Can you please throw some light on this matter. If perf is the right tool for
getting time spent in EMC,datapath classifier and packet header extraction?
If yes, please tell me the way to do that? Which part I should perf for?
Thanks and Regards
On Wed, Mar 14, 2018 at 4:31 PM, Krish
mailto:attkillro...@gmail.com>> wrote:
Justin
Thanks for telling me about perf tool. I think its a really good tool for
finding hotspots. But I don't know how to test OVS caches with the perf tool.
Greg
Can you please throw some light on this matter. If perf is the right tool for
getting time spent in EMC,datapath classifier and packet header extraction?
If yes, please tell me the way to do that? Which part I should perf for?
Thanks and Regards
On Tue, Mar 13, 2018 at 2:08 AM, Justin Pettit
mailto:jpet...@ovn.org>> wrote:
Greg (cc'd) could probably provide you a better answer, but I suspect the perf
tool is a good place to start.
--Justin
> On Mar 12, 2018, at 3:24 AM, Krish
> mailto:attkillro...@gmail.com>> wrote:
>
> Hi users,
>
> I need to get the average time spent in packet extraction then in first level
> cache , second level cache. I don't know the way to measure that.
>
> Can anyone please help me pointing to right direction?
> I think, I need to modify some code. Please guide me if I am right or wrong.
>
>
> Looking forward for a response from someone.
>
> Thanks
> ___
> discuss mailing list
> disc...@openvswitch.org<mailto:disc...@openvswitch.org>
> https://mail.openvswitch.org/mailman/listinfo/ovs-discuss
___
discuss mailing list
disc...@openvswitch.org
https://mail.openvswitch.org/mailman/listinfo/ovs-discuss