- Ethdev Rx buffer allocation in HW to save CPU cycles in the Rx path.
- Ethdev Tx buffer recycling in HW to save CPU cycles in the Tx path.
+CN9k NPA supports:
+
+- Burst alloc of up to 32 pointers.
+
+CN10k NPA supports:
+
+- Batch dequeue of up to 512 pointers with single instruction.
+- Batch enqueue of up to 15 pointers with single instruction.
+
Prerequisites and Compilation procedure
---------------------------------------
------------------------------
+Runtime Config Options
+~~~~~~~~~~~~~~~~~~~~~~
+
+- ``Maximum number of mempools per application`` (default ``128``)
+
+ The maximum number of mempools per application needs to be configured on
+ HW during mempool driver initialization. HW can support up to 1M mempools,
+ Since each mempool costs set of HW resources, the ``max_pools`` ``devargs``
+ parameter is being introduced to configure the number of mempools required
+ for the application.
+ For example::
+
+ -a 0002:02:00.0,max_pools=512
+
+ With the above configuration, the driver will set up only 512 mempools for
+ the given application to save HW resources.
+
+.. note::
+
+ Since this configuration is per application, the end user needs to
+ provide ``max_pools`` parameter to the first PCIe device probed by the given
+ application.
+
Debugging Options
~~~~~~~~~~~~~~~~~
device. In case, if end user need to run mempool as a standalone device
(without ethdev or eventdev), end user needs to bind a mempool device using
``usertools/dpdk-devbind.py``
+
+ Example command to run ``mempool_autotest`` test with standalone CN10K NPA device::
+
+ echo "mempool_autotest" | <build_dir>/app/test/dpdk-test -c 0xf0 --mbuf-pool-ops-name="cn10k_mempool_ops"