[dpdk-dev] [RFC v2 00/23] Dynamic memory allocation for DPDK

Thomas Monjalon thomas at monjalon.net
Wed Feb 14 09:04:39 CET 2018


Hi Anatoly,

19/12/2017 12:14, Anatoly Burakov:
>  * Memory tagging. This is related to previous item. Right now, we can only ask
>    malloc to allocate memory by page size, but one could potentially have
>    different memory regions backed by pages of similar sizes (for example,
>    locked 1G pages, to completely avoid TLB misses, alongside regular 1G pages),
>    and it would be good to have that kind of mechanism to distinguish between
>    different memory types available to a DPDK application. One could, for example,
>    tag memory by "purpose" (i.e. "fast", "slow"), or in other ways.

How do you imagine memory tagging?
Should it be a parameter when requesting some memory from rte_malloc
or rte_mempool?
Could it be a bit-field allowing to combine some properties?
Does it make sense to have "DMA" as one of the purpose?

How to transparently allocate the best memory for the NIC?
You take care of the NUMA socket property, but there can be more
requirements, like getting memory from the NIC itself.

+Cc more people (6WIND, Cavium, Chelsio, Mellanox, Netronome, NXP, Solarflare)
in order to trigger a discussion about the ideal requirements.


More information about the dev mailing list