From: "Christian König" <christian.koenig@amd.com>
To: Michal Hocko <mhocko@suse.com>
Cc: Peter.Enderborg@sony.com, linux-kernel@vger.kernel.org,
linux-fsdevel@vger.kernel.org, sumit.semwal@linaro.org,
adobriyan@gmail.com, akpm@linux-foundation.org,
songmuchun@bytedance.com, guro@fb.com, shakeelb@google.com,
neilb@suse.de, samitolvanen@google.com, rppt@kernel.org,
linux-media@vger.kernel.org, dri-devel@lists.freedesktop.org,
linaro-mm-sig@lists.linaro.org, willy@infradead.org
Subject: Re: [PATCH v4] dma-buf: Add DmaBufTotal counter in meminfo
Date: Tue, 20 Apr 2021 09:32:14 +0200 [thread overview]
Message-ID: <b89c84da-65d2-35df-7249-ea8edc0bee9b@amd.com> (raw)
In-Reply-To: <YH59E15ztpTTUKqS@dhcp22.suse.cz>
Am 20.04.21 um 09:04 schrieb Michal Hocko:
> On Mon 19-04-21 18:37:13, Christian König wrote:
>> Am 19.04.21 um 18:11 schrieb Michal Hocko:
> [...]
>>> The question is not whether it is NUMA aware but whether it is useful to
>>> know per-numa data for the purpose the counter is supposed to serve.
>> No, not at all. The pages of a single DMA-buf could even be from different
>> NUMA nodes if the exporting driver decides that this is somehow useful.
> As the use of the counter hasn't been explained yet I can only
> speculate. One thing that I can imagine to be useful is to fill gaps in
> our accounting. It is quite often that the memroy accounted in
> /proc/meminfo (or oom report) doesn't add up to the overall memory
> usage. In some workloads the workload can be huge! In many cases there
> are other means to find out additional memory by a subsystem specific
> interfaces (e.g. networking buffers). I do assume that dma-buf is just
> one of those and the counter can fill the said gap at least partially
> for some workloads. That is definitely useful.
Yes, completely agree. I'm just not 100% sure if the DMA-buf framework
should account for that or the individual drivers exporting DMA-bufs.
See below for a further explanation.
> What I am trying to bring up with NUMA side is that the same problem can
> happen on per-node basis. Let's say that some user consumes unexpectedly
> large amount of dma-buf on a certain node. This can lead to observable
> performance impact on anybody on allocating from that node and even
> worse cause an OOM for node bound consumers. How do I find out that it
> was dma-buf that has caused the problem?
Yes, that is the direction my thinking goes as well, but also even further.
See DMA-buf is also used to share device local memory between processes
as well. In other words VRAM on graphics hardware.
On my test system here I have 32GB of system memory and 16GB of VRAM. I
can use DMA-buf to allocate that 16GB of VRAM quite easily which then
shows up under /proc/meminfo as used memory.
But that isn't really system memory at all, it's just allocated device
memory.
> See where I am heading?
Yeah, totally. Thanks for pointing this out.
Suggestions how to handle that?
Regards,
Christian.
next prev parent reply other threads:[~2021-04-20 7:32 UTC|newest]
Thread overview: 29+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-04-17 10:40 [PATCH v4] dma-buf: Add DmaBufTotal counter in meminfo Peter Enderborg
2021-04-17 10:59 ` Christian König
2021-04-17 11:20 ` Peter.Enderborg
2021-04-17 11:54 ` Christian König
2021-04-17 12:13 ` Peter.Enderborg
2021-04-20 8:39 ` Daniel Vetter
2021-04-17 13:07 ` [External] " Muchun Song
2021-04-17 13:43 ` Peter.Enderborg
2021-04-17 14:21 ` Muchun Song
2021-04-17 15:03 ` Christian König
2021-04-19 12:16 ` Michal Hocko
2021-04-19 12:41 ` Peter.Enderborg
2021-04-19 15:00 ` Michal Hocko
2021-04-19 15:19 ` Peter.Enderborg
2021-04-19 15:44 ` Christian König
2021-04-19 16:11 ` Michal Hocko
2021-04-19 16:37 ` Christian König
2021-04-20 7:04 ` Michal Hocko
2021-04-20 7:20 ` Mike Rapoport
2021-04-20 7:47 ` Michal Hocko
2021-04-20 7:32 ` Christian König [this message]
2021-04-20 7:46 ` Michal Hocko
2021-04-20 8:00 ` Christian König
2021-04-20 8:28 ` Michal Hocko
2021-04-20 9:02 ` Peter.Enderborg
2021-04-20 9:12 ` Michal Hocko
2021-04-20 9:25 ` Peter.Enderborg
2021-04-20 11:04 ` Michal Hocko
2021-04-20 11:24 ` Peter.Enderborg
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=b89c84da-65d2-35df-7249-ea8edc0bee9b@amd.com \
--to=christian.koenig@amd.com \
--cc=Peter.Enderborg@sony.com \
--cc=adobriyan@gmail.com \
--cc=akpm@linux-foundation.org \
--cc=dri-devel@lists.freedesktop.org \
--cc=guro@fb.com \
--cc=linaro-mm-sig@lists.linaro.org \
--cc=linux-fsdevel@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-media@vger.kernel.org \
--cc=mhocko@suse.com \
--cc=neilb@suse.de \
--cc=rppt@kernel.org \
--cc=samitolvanen@google.com \
--cc=shakeelb@google.com \
--cc=songmuchun@bytedance.com \
--cc=sumit.semwal@linaro.org \
--cc=willy@infradead.org \
/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