[dpdk-dev] DPDK hugepage memory fragmentation

Burakov, Anatoly anatoly.burakov at intel.com
Fri Jul 10 17:44:19 CEST 2020


On 10-Jul-20 11:28 AM, Bruce Richardson wrote:
> On Fri, Jul 10, 2020 at 02:52:16PM +0530, Kamaraj P wrote:
>> Hello All,
>>
>> We are running to run DPDK based application in a container mode,
>> When we do multiple start/stop of our container application, the DPDK
>> initialization seems to be failing.
>> This is because the hugepage memory fragementated and is not able to find
>> the continuous allocation of the memory to initialize the buffer in the
>> dpdk init.
>>
>> As part of the cleanup of the container, we do call rte_eal_cleanup() to
>> cleanup the memory w.r.t our application. However after iterations we still
>> see the memory allocation failure due to the fragmentation issue.
>>
>> We also tried to set the "--huge-unlink" as an argument before when we
>> called the rte_eal_init() and it did not help.
>>
>> Could you please suggest if there is an option or any existing patches
>> available to clean up the memory to avoid fragmentation issues in the
>> future.
>>
>> Please advise.
>>
> What version of DPDK are you using, and what kernel driver for NIC
> interfacing are you using?
> DPDK versions since 18.05 should be more forgiving of fragmented memory,
> especially if using the vfio-pci kernel driver.
> 

This sounds odd, to be honest.

Unless you're allocating huge chunks of IOVA-contiguous memory, 
fragmentation shouldn't be an issue. How did you determine that this was 
in fact due to fragmentation?

> Regards,
> /Bruce
> 


-- 
Thanks,
Anatoly


More information about the dev mailing list