[dpdk-users] 答复: How can create a mempool more than 20GB?

宋捷 songj at zctt.com
Wed Sep 11 04:21:42 CEST 2019


Hi Stephen,

Expert,you are correct, 
I update the default hugepage size from 2M to 1G, it's worked.

Thanks you very much!


Jie



-----邮件原件-----
发件人: Stephen Hemminger [mailto:stephen at networkplumber.org] 
发送时间: 2019年9月11日 1:36
收件人: 宋捷 <songj at zctt.com>
抄送: 'users' <users at dpdk.org>; 'Van Haaren, Harry' <harry.van.haaren at intel.com>
主题: Re: How can create a mempool more than 20GB?

On Tue, 10 Sep 2019 19:02:37 +0800
宋捷 <songj at zctt.com> wrote:

> Hi All,
> 
>  
> 
>        I assigned 40GB hugepages for each node.
> 
> 
> 
>  
> 
>        I need a huge mempool buffer (20GB) for save received packets, 
> I create a mempool as follow:
> 
> rte_pktmbuf_pool_create("rx_dump_pool",  8*1000*1000, 0, 0, 
> RTE_MBUF_DEFAULT_BUF_SIZE, rte_socket_id() );
> 
>  
> 
> RTE_MBUF_DEFAULT_BUF_SIZE is 2048+128 , I think 
> rte_pktmbuf_pool_create should create 8*1000*1000*(2176)≈16G buffer,
> 
> But failed with below prompt:
> 
> EAL: eal_memalloc_alloc_seg_bulk(): couldn't find suitable memseg_list
> 
> EAL: eal_memalloc_alloc_seg_bulk(): couldn't find suitable memseg_list
> 
> EAL: Error - exiting with code: 1
> 
>  
> 
> I try to reduce the size, the mempool can be created successfully as follow:
> 
> rte_pktmbuf_pool_create("rx_dump_pool", 5000000, 0, 0, 
> RTE_MBUF_DEFAULT_BUF_SIZE, rte_socket_id() );
> 
>  
> 
>  
> 
> Does DPDK mempool has a limited size ?  I have no ideal for this L
> 
>  

You are going to need 1G huge pages on this, and a system with very large amount of memory. To setup 1G huge pages requires settings on kernel command line.

Also expect slow startup times with that much memory.







More information about the users mailing list