On Tue, Jun 15, 2021 at 02:16:27PM +0200, Morten Brørup wrote: > MBUF and MLX5 maintainers, > > I'm picking up an old discussion, which you might consider pursuing. Feel > free to ignore, if you consider this discussion irrelevant or already closed > and done with. > > The Techboard has previously discussed the organization of the mbuf fields. > Ref: http://mails.dpdk.org/archives/dev/2020-November/191859.html > > It was concluded that there was no measured performance difference if the > "pool" or "next" field was in the first cacheline, so it was decided to put > the "pool" field in the first cacheline. And further optimizing the mbuf > field organization could be reconsidered later. > > I have been looking at it. In theory it should not be required to touch the > "pool" field at RX. But the "next" field must be written for segmented > packets. > Question: are there cases where segmented packets are used, but they aren't big packets, and so need a high packets-per-second value? The thinking when designing the mbuf was that any application which could handle high packets per second for medium/small packets would be fine with a few extra cycles penalty for big ones, since the overall PPS for the driver would be much lower.
/Bruce