Bug 1147

Summary: ENA NET PMD tracing function enabled on transmit fastpath in non-debug builds
Product: DPDK Reporter: Declan Doherty (declan.doherty)
Component: ethdevAssignee: dev
Status: UNCONFIRMED ---    
Severity: major CC: shaibran
Priority: Normal    
Version: 21.08   
Target Milestone: ---   
Hardware: All   
OS: Linux   
Attachments: Flamegraph of testpmd and ena pmd on AWS

Description Declan Doherty 2022-12-12 11:14:17 CET
Created attachment 237 [details]
Flamegraph of testpmd and ena pmd on AWS

During performance benchmarking on AWS with VPP, a significant cycle count increase was noticed within the ENA PMD transmit burst. 

Further investigation with testpmd shows the same cycle count increase, which is in the order of 10 X compared to pre 21.08 release.

The issues seems to relate to in changes in commit 0a001d69bca086c5a6e62b10552192380efee1f0, which changes the default behaviour of the  ena_trc_** macros, some of which are on the fast path, to always invoke rte_log. 

See attach flame graph, for testpmd in mac forward mode, where a huge percentage of time is spent checking whether to log the trace.

Issue seems to effect all version of DPDK from 21.08 forwards.
Comment 1 shaibran 2023-08-20 13:31:22 CEST
I will review the ena macro to check if there is a need to separate the macro for fastpath to avoid the time consuming check