DPDK patches and discussions
 help / color / mirror / Atom feed
From: "Burakov, Anatoly" <anatoly.burakov@intel.com>
To: David Marchand <david.marchand@redhat.com>
Cc: siddarth rai <siddsr@gmail.com>, dev <dev@dpdk.org>
Subject: Re: [dpdk-dev] Big spike in DPDK VSZ
Date: Tue, 11 Feb 2020 10:28:03 +0000	[thread overview]
Message-ID: <b1ed2687-ea73-2eb0-34ed-f2489387fbd1@intel.com> (raw)
In-Reply-To: <CAJFAV8ygPEV26pYfNVQTQwNJ9bNnox1=Wgm=7OVSK0EDcC_oSg@mail.gmail.com>

On 11-Feb-20 8:11 AM, David Marchand wrote:
> Hello Anatoly,
> 
> On Tue, Feb 4, 2020 at 11:23 AM Burakov, Anatoly
> <anatoly.burakov@intel.com> wrote:
>>
>> On 30-Jan-20 8:51 AM, David Marchand wrote:
>>> On Thu, Jan 30, 2020 at 8:48 AM siddarth rai <siddsr@gmail.com> wrote:
>>>> I have been using DPDK 19.08 and I notice the process VSZ is huge.
>>>>
>>>> I tried running the test PMD. It takes 64G VSZ and if I use the
>>>> '--in-memory' option it takes up to 188G.
>>>>
>>>> Is there anyway to disable allocation of such huge VSZ in DPDK ?
>>>
>>> *Disclaimer* I don't know the arcanes of the mem subsystem.
>>>
>>> I suppose this is due to the memory allocator in dpdk that reserves
>>> unused virtual space (for memory hotplug + multiprocess).
>>
>> Yes, that's correct. In order to guarantee memory reservation succeeding
>> at all times, we need to reserve all possible memory in advance.
>> Otherwise we may end up in a situation where primary process has
>> allocated a page, but the secondary can't map it because the address
>> space is already occupied by something else.
>>
>>>
>>> If this is the case, maybe we could do something to enhance the
>>> situation for applications that won't care about multiprocess.
>>> Like inform dpdk that the application won't use multiprocess and skip
>>> those reservations.
>>
>> You're welcome to try this, but i assure you, avoiding these
>> reservations is a lot of work, because you'd be adding a yet another
>> path to an already overly complex allocator :)
> 
> Went and looked at the EAL options we have.
> I understand that the --in-memory (essentially the --no-shconf
> functionality) option should be enough.
> I can see that Siddarth uses it.
> 
> But the problem is that the memory allocator still reserves big va
> areas for memory hotplug.

Yes, because even though we don't *share* this memory, we still grow it 
dynamically. We could have *not* done it, but that would be adding 
another code path - currently, we're piggybacking off existing 
infrastructure.

> 
> 
>>
>>>
>>> Or another idea would be to limit those reservations to what is passed
>>> via --socket-limit.
>>>
>>> Anatoly?
>>
>> I have a patchset in the works that does this and was planning to submit
>> it to 19.08, but things got in the way and it's still sitting there
>> collecting bit rot. This may be reason enough to resurrect it and finish
>> it up :)
> 
> Does this patchset contain more than just taking --socket-limit into account?

No, it actually doesn't rely on any of the existing options. It has to 
do with tweaking the config options related to memseg list sizings 
(essentially like adjusting config options at compile time, only without 
hardcoding them).

> 
> 
> --
> David Marchand
> 


-- 
Thanks,
Anatoly

  reply	other threads:[~2020-02-11 10:28 UTC|newest]

Thread overview: 16+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-01-30  7:48 siddarth rai
2020-01-30  8:51 ` David Marchand
2020-01-30 10:47   ` siddarth rai
2020-01-30 13:15     ` Meunier, Julien (Nokia - FR/Paris-Saclay)
2020-01-31 12:14       ` siddarth rai
2020-03-10 15:26     ` David Marchand
2020-02-04 10:23   ` Burakov, Anatoly
2020-02-04 10:55     ` siddarth rai
2020-02-04 11:13       ` Burakov, Anatoly
2020-02-04 11:57         ` siddarth rai
2020-02-04 12:07           ` siddarth rai
2020-02-04 16:18             ` Burakov, Anatoly
2020-02-11  8:11     ` David Marchand
2020-02-11 10:28       ` Burakov, Anatoly [this message]
2020-02-02  9:22 ` David Marchand
2020-02-04 10:20   ` Burakov, Anatoly

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=b1ed2687-ea73-2eb0-34ed-f2489387fbd1@intel.com \
    --to=anatoly.burakov@intel.com \
    --cc=david.marchand@redhat.com \
    --cc=dev@dpdk.org \
    --cc=siddsr@gmail.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
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).