On Wed, Jun 1, 2022 at 6:38 PM Kevin Traynor <[email protected]> wrote:
>
> Mempools may currently be shared between DPDK ports based
> on port MTU and NUMA. With some hint from the user we can
> increase the sharing on MTU and hence reduce memory
> consumption in many cases.
>
> For example, a port with MTU 9000, uses a mempool with an
> mbuf size based on 9000 MTU. A port with MTU 1500, uses a
> different mempool with an mbuf size based on 1500 MTU.
>
> In this case, assuming same NUMA, both these ports could
> share the 9000 MTU mempool.
>
> The user must give a hint as order of creation of ports and
> setting of MTUs may vary and we need to ensure that upgrades
> from older OVS versions do not require more memory.
>
> This scheme can also prevent multiple mempools being created
> for cases where a port is added picking up a default MTU and
> an appropriate mempool, but later has it's MTU changed to a
> different value requiring a different mempool.
>
> Example usage:
>
>  $ ovs-vsctl --no-wait set Open_vSwitch . \
>    other_config:shared-mempool-config=9000,1500:1,6000:1
>
> Port added on NUMA 0:
> * MTU 1500, use mempool based on 9000 MTU
> * MTU 5000, use mempool based on 9000 MTU
> * MTU 9000, use mempool based on 9000 MTU
> * MTU 9300, use mempool based on 9300 MTU (existing behaviour)
>
> Port added on NUMA 1:
> * MTU 1500, use mempool based on 1500 MTU
> * MTU 5000, use mempool based on 6000 MTU
> * MTU 9000, use mempool based on 9000 MTU
> * MTU 9300, use mempool based on 9300 MTU (existing behaviour)
>
> Default behaviour is unchanged and mempools are still only created
> when needed.
>
> Signed-off-by: Kevin Traynor <[email protected]>

Reviewed-by: David Marchand <[email protected]>


-- 
David Marchand

_______________________________________________
dev mailing list
[email protected]
https://mail.openvswitch.org/mailman/listinfo/ovs-dev

Reply via email to