Bug 1027
Summary: | mempool cache size parameter is misleading | ||
---|---|---|---|
Product: | DPDK | Reporter: | Morten Brørup (mb) |
Component: | core | Assignee: | dev |
Status: | UNCONFIRMED --- | ||
Severity: | normal | ||
Priority: | Normal | ||
Version: | unspecified | ||
Target Milestone: | --- | ||
Hardware: | All | ||
OS: | All |
Description
Morten Brørup
2022-06-07 09:42:03 CEST
This discrepancy also leads to bugs in applications, where the application developer rightfully assumes that the cache cannot consume more than its size. E.g. l3fwd-power calculates the number of required mbufs as: #define NB_MBUF RTE_MAX ( \ (nb_ports*nb_rx_queue*nb_rxd + \ nb_ports*nb_lcores*MAX_PKT_BURST + \ nb_ports*n_tx_queue*nb_txd + \ nb_lcores*MEMPOOL_CACHE_SIZE), \ (unsigned)8192) Note that MEMPOOL_CACHE_SIZE is not multiplied by 1.5 here. Updating the documentation is not sufficient to prevent application bugs. This needs to be fixed in the mempool library, so I have changed the bug component from "doc" to "core". Not even the DPDK example application developers take the 1.5 mempool cache size factor into consideration. How can we expect other application developers to do it? |