Hi, > Hi Matt, > > On Mon, Jun 30, 2014 at 05:43:39PM -0500, Matt Laswell wrote: > > Hey Folks, > > > > In my application, I'm seeing some design considerations in a project > > I'm working on that push me towards the use of smaller memory page > > sizes. I'm curious - is it possible in practical terms to run DPDK without > > hugepages? > > > If so, does anybody have any practical experience (or a > > back-of-the-envelop estimate) of how badly such a configuration would > > hurt performance? For sake of argument, assume that virtually all of > > the memory being used is in pre-allocated mempools (e.g lots of > > rte_mempool_create(), very little rte_malloc(). > > > > There is an case to run DPDK without hugepages in DPDK source codes, which is > DPDK supports Xen Dom0. for this, we developed a > dom0_mm driver. > Except for Xen Dom0, it is impossible to run DPDK without hugepages without > any changes at memory initialization phase, but current > rte_memzone_reserve_bounded() and > rte_mempool_xmem_create() implemention have already support non-hugepage > usage in DPDK. >
On linux testpmd can run with mempool on 4K pages (though RX/TX HW rings are still on hugepages). To try it add "--mp-anon" to your testpmd command-line. Also to get a more 'real' picture you can disable MP caching: "--mbcache=0". Konstantin