[dpdk-users] movzbl in rte_eth_rx_burst
Stephen Hemminger
stephen at networkplumber.org
Sun Aug 20 19:56:38 CEST 2017
On Sat, 19 Aug 2017 08:45:15 +0000
"Dorsett, Michal" <Michal.Dorsett at verint.com> wrote:
> Hi,
>
> We are running dpdk 16.07. Below is a snippet from a perf annotate report of a CPU running a thread that constantly reads packets.
> As you can see, the hottest instructruction is
>
> movzbl 0x10(%rcx),%r15d
>
> which, I believe, is referring to
>
> struct rte_eth_dev *dev = &rte_eth_devices[port_id];
>
>
> Can someone explain why this instruction is so costly, and how I can remedy this?
Perf is not accurate on exact instruction.
Your problem is that reading TSC causes a full pipeline stall on most x86 processors.
https://archive.fosdem.org/2015/schedule/event/dpdk_performance/
More information about the users
mailing list