Messages in this thread | | | Date | Fri, 2 Jun 2023 15:25:01 +0200 | Subject | Re: [PATCH net-next 08/11] iavf: switch to Page Pool | From | Alexander Lobakin <> |
| |
From: David Christensen <drc@linux.vnet.ibm.com> Date: Wed, 31 May 2023 13:18:59 -0700
> > > On 5/25/23 4:08 AM, Alexander Lobakin wrote: >>> Any plans to add page pool fragmentation support (i.e. >>> PP_FLAG_PAGE_FRAG) in the future to better support architectures with >>> larger page sizes such as 64KB on ppc64le? >> >> Currently no, we resigned from page fragmentation due to the complexity >> and restrictions it provides for no benefits on x86_64. But I remember >> that pages > 4 Kb exist (I have a couple MIPS boards where I have fun >> sometimes and page size is set to 16 Kb there. But still always use 1 >> page per frame). >> By "better support" you mean reducing memory usage or something else? > > Yes, reducing memory waste. Current generation P10 systems default to > quad-port, 10Gb copper i40e NICs. When you combine a large number of > CPUs, and therefore a large number of RX queues, with a 64KB page > allocation per packet, memory usage can balloon very quickly as you add > additional ports.
Yeah, I got it. Unfortunately, page split adds a bunch of overhead for no benefit on 4k systems. There's a small series here on netdev which tries to combine frag and non-frag allocations in Page Pool, so that there will be no overhead on 4k systems and no memory waste on 8k+ ones.
> > Would you be open to patches to address this further down the road as > your refactoring effort gets closer to completion?
Let's see how the abovementioned effort goes. I feel like a generic solution would be better than trying to handle that per-driver.
> > Dave
Thanks, Olek
| |