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: