Thanks Konstantin. Previous allocation error was coming with 1024 huge pages of 2 MB size.
After increasing the huge pages to 2048, I was able to add another ~140 rules [IPv4 rule data--> with src, dst IP address & port, next header ] more, ie., 950 rules were added. Logically it did not increase number of rules [expected 2*817, but only 950 were added]. Is it really using huge pages memory only? >From the code it looks like heap memory. [ ret = >malloc_heap_alloc(&mcfg->malloc_heaps[i], type, size, 0, align == 0 ? 1 : >align, 0) ] > -----Original Message----- > From: dev [mailto:dev-bounces at dpdk.org] On Behalf Of Rapelly, Varun > Sent: Friday, February 26, 2016 10:28 AM > To: dev at dpdk.org > Subject: Re: [dpdk-dev] ACL memory allocation failures > > Hi All, > > When I'm trying to configure some 5000+ ACL rules with different > source IP addresses, getting ACL memory allocation failure. I'm using DPDK > 2.1. > > [root at ACLISSUE log_2015_10_26_08_19_42]# vim np.log match nodes/bytes > used: 816/104448 > total: 12940832 bytes > ACL: Build phase for ACL "ipv4_acl_table2": > memory consumed: 947913495 > ACL: trie 0: number of rules: 816 > ACL: allocation of 12966528 bytes on socket 0 for ipv4_acl_table1 > failed > ACL: Build phase for ACL "ipv4_acl_table1": > memory consumed: 947913495 > ACL: trie 0: number of rules: 817 > EAL: Error - exiting with code: 1 > Cause: Failed to build ACL trie > > Again sourced the ACL config file. After adding around 77 again the same > error came. > > total: 14912784 bytes > ACL: Build phase for ACL "ipv4_acl_table1": > memory consumed: 1040188260 > ACL: trie 0: number of rules: 893 > ACL: allocation of 14938480 bytes on socket 0 for ipv4_acl_table2 > failed You are running out of hugepages memory. > ACL: Build phase for ACL "ipv4_acl_table2": > memory consumed: 1040188260 > ACL: trie 0: number of rules: 894 > EAL: Error - exiting with code: 1 > Cause: Failed to build ACL trie > > Where to increase the memory to avoid this issue? Refer to: http://dpdk.org/doc/guides/linux_gsg/sys_reqs.html#running-dpdk-applications Section 2.3.2 Konstantin