[dpdk-dev] [PATCH 1/1] mbuf: move pool pointer in first half
Thomas Monjalon
thomas at monjalon.net
Sat Nov 7 19:39:48 CET 2020
07/11/2020 18:12, Jerin Jacob:
> On Sat, Nov 7, 2020 at 10:04 PM Thomas Monjalon <thomas at monjalon.net> wrote:
> >
> > The mempool pointer in the mbuf struct is moved
> > from the second to the first half.
> > It should increase performance on most systems having 64-byte cache line,
>
> > i.e. mbuf is split in two cache lines.
>
> But In any event, Tx needs to touch the pool to freeing back to the
> pool upon Tx completion. Right?
> Not able to understand the motivation for moving it to the first 64B cache line?
> The gain varies from driver to driver. For example, a Typical
> ARM-based NPU does not need to
> touch the pool in Rx and its been filled by HW. Whereas it needs to
> touch in Tx if the reference count is implemented.
>
> > Due to this change, tx_offload is moved, so some vector data paths
> > may need to be adjusted. Note: OCTEON TX2 check is removed temporarily!
>
> It will be breaking the Tx path, Please just don't remove the static
> assert without adjusting the code.
Of course not.
I looked at the vector Tx path of OCTEON TX2,
it's close to be impossible to understand :)
Please help!
More information about the dev
mailing list