https://bugs.dpdk.org/show_bug.cgi?id=1525 Bug ID: 1525 Summary: dpdk mempool creation is resulting into lot of memory getting wasted Product: DPDK Version: 20.11 Hardware: x86 OS: Linux Status: UNCONFIRMED Severity: major Priority: Normal Component: core Assignee: dev@dpdk.org Reporter: sandipchhikara@gmail.com Target Milestone: --- We are using rte_mempool_op_populate_helper for creating dpdk mempool. Memory is allocated from 1GB huge page and passed to this function. It is observed that rte_mempool_op_populate_helper function is calculating page size as 4K and as MEMPOOL_F_NO_IOVA_CONTIG is not specified, so it don't place objects across pages resulting into lot of memory wastage and creation of pool which is lesser in size then required. rte_mempool_op_calc_mem_size_default is used to calculate how much memory is required for the pool. If it is user application, which is working on virtual memory (No driver accessing physical memory directly), whether it would be fine to enable flag MEMPOOL_F_NO_IOVA_CONTIG. We have object of 712 bytes, (final memory for each object is becoming 812 bytes after accounting header and trailer etc). We are creating 2500000 objects in pool, allocating 2 GB (1 GB huge pages) memory for the same, but after placing 4 objects in one page, it starts using next page as it is wrongly finding that page size is 4K. -- You are receiving this mail because: You are the assignee for the bug.