DPDK patches and discussions
 help / color / mirror / Atom feed
* [dpdk-dev] Huge Pages.
@ 2014-10-01  9:21 Alex Markuze
  2014-10-01  9:28 ` Choi, Sy Jong
  2014-10-01  9:30 ` Bruce Richardson
  0 siblings, 2 replies; 3+ messages in thread
From: Alex Markuze @ 2014-10-01  9:21 UTC (permalink / raw)
  To: dev

Hi,
How well does DPDK play with other applications using huge pages?
Looking at eal_init/eal_hugepage_info_init it seems that DPDK will try to
grab All available huge pages.

Is there an existing way to limit the number of huge pages taken ?
My goal is to be able to run several applications each with its own dpdk
instance and a possible 3rd party application all using huge pages. Is this
possible under DPDKs current design?

Sharing the NICs is fairly simple if we specify the available lci functions
per dpdk instance but at first glance sharing huge pages looks like a
problem.

Thanks.

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: [dpdk-dev] Huge Pages.
  2014-10-01  9:21 [dpdk-dev] Huge Pages Alex Markuze
@ 2014-10-01  9:28 ` Choi, Sy Jong
  2014-10-01  9:30 ` Bruce Richardson
  1 sibling, 0 replies; 3+ messages in thread
From: Choi, Sy Jong @ 2014-10-01  9:28 UTC (permalink / raw)
  To: Alex Markuze, dev

Hi Alex,

There option in EAL when you starts DPDK where by configure the amount of memory consume by DPDK.
• -m MB
	Memory to allocate. See also --socket-mem.

• --socket-mem
	Set the memory to allocate on specific sockets (use comma separated values).

Regards,
Choi, Sy Jong
Platform Application Engineer


-----Original Message-----
From: dev [mailto:dev-bounces@dpdk.org] On Behalf Of Alex Markuze
Sent: Wednesday, October 01, 2014 5:21 PM
To: dev@dpdk.org
Subject: [dpdk-dev] Huge Pages.

Hi,
How well does DPDK play with other applications using huge pages?
Looking at eal_init/eal_hugepage_info_init it seems that DPDK will try to grab All available huge pages.

Is there an existing way to limit the number of huge pages taken ?
My goal is to be able to run several applications each with its own dpdk instance and a possible 3rd party application all using huge pages. Is this possible under DPDKs current design?

Sharing the NICs is fairly simple if we specify the available lci functions per dpdk instance but at first glance sharing huge pages looks like a problem.

Thanks.

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: [dpdk-dev] Huge Pages.
  2014-10-01  9:21 [dpdk-dev] Huge Pages Alex Markuze
  2014-10-01  9:28 ` Choi, Sy Jong
@ 2014-10-01  9:30 ` Bruce Richardson
  1 sibling, 0 replies; 3+ messages in thread
From: Bruce Richardson @ 2014-10-01  9:30 UTC (permalink / raw)
  To: Alex Markuze; +Cc: dev

On Wed, Oct 01, 2014 at 12:21:05PM +0300, Alex Markuze wrote:
> Hi,
> How well does DPDK play with other applications using huge pages?
> Looking at eal_init/eal_hugepage_info_init it seems that DPDK will try to
> grab All available huge pages.
> 
> Is there an existing way to limit the number of huge pages taken ?
> My goal is to be able to run several applications each with its own dpdk
> instance and a possible 3rd party application all using huge pages. Is this
> possible under DPDKs current design?
> 
> Sharing the NICs is fairly simple if we specify the available lci functions
> per dpdk instance but at first glance sharing huge pages looks like a
> problem.
> 
> Thanks.

It should play well-enough, though not perfectly. There are a couple of 
things to take into account:
* If an app is already using hugepages when a DPDK app starts, the new app 
  should only be looking at using the free hugepages.
* By default, the app will look to use all the free hugepages on the system.  
  However, this can be overriden by specifying the "-m" or for numa systems 
  the "--socket-mem" options. The extra wrinkle here is that eal will try to 
  grab the best set of hugepages it can, so actually temporarily takes over 
  all free hugepages to analyse, then releases the ones it won't use back 
  once it has determined what a good page set would be.
* The hugepage files used by a DPDK app are not automatically deleted once 
  the app terminates. Instead, each time the app starts up it cleaups any 
  unused hugepages from any previous runs. It does this by looking for files 
  with the appropraite filename used by DPDK apps, and checking for a lock 
  being held on them.
* To have multiple apps running side by side, each with it's own hugepage 
  memory, use the --file-prefix EAL option (along with --socket-mem) to 
  force each app to use a different set of hugepage files. [In this 
  situation, you do need to use the -b flag to blacklist ports used by one 
  app from the other app]
 
Hope this helps.
/Bruce 

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2014-10-01  9:23 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2014-10-01  9:21 [dpdk-dev] Huge Pages Alex Markuze
2014-10-01  9:28 ` Choi, Sy Jong
2014-10-01  9:30 ` Bruce Richardson

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).