[dpdk-dev] When are mbufs released back to the mempool?

Schumm, Ken ken.schumm at intel.com
Tue Dec 17 19:13:35 CET 2013


When running l2fwd the number of available mbufs returned by rte_mempool_count() starts at 7680 on an idle system.

As traffic commences the count declines from 7680 to 5632 (expected).

When traffic stops the count does not climb back to the starting value, indicating that idle mbufs are not returned to the mempool.

For the LCORE cache the doc states

"While this may mean a number of buffers may sit idle on some core's cache, the speed
at which a core can access its own cache for a specific memory pool without locks
provides performance gains"

which makes sense.

Is this also true of ring buffers?

We need to understand when packets are released back to the mempool and with l2fwd it appears that they never are, at least not all of them.

Thanks!


More information about the dev mailing list