[dpdk-dev] [PATCH v2 00/13] Mbuf Structure Rework, part 2
Thomas Monjalon
thomas.monjalon at 6wind.com
Thu Sep 18 00:35:45 CEST 2014
2014-09-11 14:15, Bruce Richardson:
> This patch set continues on from the changes in part 1, and depends
> upon that patch set.
>
> This patch set reorders the fields in the mbuf structure and splits
> the structure across two cache lines, given lots of new space for new
> fields to be added. This set uses some of that space by expanding the
> ol_flags field. A part 3 patchset is planned to introduce some other
> new fields into the new mbuf structure.
>
> With the splitting of the mbuf across multiple cache lines, performance
> degradations are seen inside the drivers, both fast-path and slow path.
> For the fast-path, this patchset reworks the way in which the pool pointer
> is used to free packets post-TX, which removes the perf regression. For
> the slow path, an alternative approach is taken - a new scattered packets
> RX function is introduced into the vector PMD. Using this function,
> throughput for the slow path RX-TX using testpmd is increased by up to 20%
> over the original baseline.
>
> Changes in V2:
> * General minor updates follow comments on V1 set
> * Updated a number of patches to include KNI mbuf changes where needed
> * Deferred the patch to add the packet type field to a future patch set
> * After removing meta-data element from mbuf structure also added in patch
> to move the macros to rte_port/rte_port.h
>
> Bruce Richardson (11):
> mbuf: reorder fields by time of use
> mbuf: expand ol_flags field to 64-bits
> mbuf: introduce a flag to indicate a control mbuf
> mbuf: minor changes for readability
> mbuf: use macros only to access the mbuf metadata
> mbuf: add named points inside the mbuf structure
> ixgbe: rework vector pmd following mbuf changes
> mbuf: split mbuf across two cache lines.
> mbuf: move l2_len and l3_len to second cache line
> ixgbe: Fix perf regression due to moved pool ptr
> ixgbe: Improve slow-path perf: vector scattered RX
>
> Olivier Matz (1):
> mbuf: replace data pointer by an offset
Applied for version 1.8.0.
Note that ixgbe patches are not reviewed but I make an exception here,
because Intel is responsible of ixgbe performances and we have some
time to fix it (if needed) before the release.
--
Thomas
More information about the dev
mailing list