From: SeongJae Park <sjpark@amazon.com>
To: Andrew Morton <akpm@linux-foundation.org>
Cc: Minchan Kim <minchan@kernel.org>,
LKML <linux-kernel@vger.kernel.org>,
linux-mm <linux-mm@kvack.org>, <linux-api@vger.kernel.org>,
<oleksandr@redhat.com>, Suren Baghdasaryan <surenb@google.com>,
Tim Murray <timmurray@google.com>,
Daniel Colascione <dancol@google.com>,
Sandeep Patil <sspatil@google.com>,
Sonny Rao <sonnyrao@google.com>,
Brian Geffon <bgeffon@google.com>, Michal Hocko <mhocko@suse.com>,
Johannes Weiner <hannes@cmpxchg.org>,
Shakeel Butt <shakeelb@google.com>,
John Dias <joaodias@google.com>,
Joel Fernandes <joel@joelfernandes.org>, <sj38.park@gmail.com>,
<alexander.h.duyck@linux.intel.com>, Jann Horn <jannh@google.com>
Subject: Re: Re: [PATCH v6 0/7] introduce memory hinting API for external process
Date: Thu, 20 Feb 2020 10:16:31 +0100 [thread overview]
Message-ID: <20200220091631.31949-1-sjpark@amazon.com> (raw)
In-Reply-To: <20200219120123.07dda51c29006a892059ccde@linux-foundation.org> (raw)
On Wed, 19 Feb 2020 12:01:23 -0800 Andrew Morton <akpm@linux-foundation.org> wrote:
> On Tue, 18 Feb 2020 17:44:26 -0800 Minchan Kim <minchan@kernel.org> wrote:
>
> > Now, we have MADV_PAGEOUT and MADV_COLD as madvise hinting API. With that,
> > application could give hints to kernel what memory range are preferred to be
> > reclaimed. However, in some platform(e.g., Android), the information
> > required to make the hinting decision is not known to the app.
> > Instead, it is known to a centralized userspace daemon(e.g., ActivityManagerService),
> > and that daemon must be able to initiate reclaim on its own without any app
> > involvement.
> >
>
> This patchset doesn't seem to be getting a lot of interest from other
> potential users? It seems very specialized. Are there or will there
> ever be any users of this apart from one Android daemon?
>
> Also, it doesn't terribly hard for ActivityManagerService to tell
> another process "now run madvise with these arguments". Please explain
> why this is not practical in ActivityManagerService and also within
> other potential users of this syscall.
I personally have interest in and hope successful development/merge of this
patchset.
The interested usecases of 'madvise_process()' for me is optimizations of
general memory-intensive workloads having dynamic data access patterns on
hierarchical memory systems (e.g., multi-tier memory or fast storage based swap
devices). In more detail, I'm already using a part of this patchset for my RFC
patchset implementing Data Access Monitoring-based Operation Schemes[1]. For
my specific case, I don't need new system call but only target task argument,
though.
Once in a past, before joining my current company, I tried using 'madvise()' to
optimize some scientific HPC programs. The improvement results were clear, but
optimizing each of the workloads was challenging and time-consuming. I believe
this new systemcall to be very helpful for such cases, either.
[1] https://lore.kernel.org/linux-mm/20200218085309.18346-1-sjpark@amazon.com/
Thanks,
SeongJae Park
prev parent reply other threads:[~2020-02-20 9:17 UTC|newest]
Thread overview: 28+ messages / expand[flat|nested] mbox.gz Atom feed top
2020-02-19 1:44 [PATCH v6 0/7] introduce memory hinting API for external process Minchan Kim
2020-02-19 1:44 ` [PATCH v6 1/7] mm: pass task and mm to do_madvise Minchan Kim
2020-02-28 22:15 ` Suren Baghdasaryan
2020-02-19 1:44 ` [PATCH v6 2/7] mm: introduce external memory hinting API Minchan Kim
2020-02-20 19:13 ` kbuild test robot
2020-02-20 21:15 ` Minchan Kim
2020-02-20 21:21 ` Minchan Kim
2020-02-28 22:14 ` Suren Baghdasaryan
2020-03-02 19:18 ` Minchan Kim
2020-02-20 20:48 ` kbuild test robot
2020-02-19 1:44 ` [PATCH v6 3/7] mm: check fatal signal pending of target process Minchan Kim
2020-02-28 22:20 ` Suren Baghdasaryan
2020-02-19 1:44 ` [PATCH v6 4/7] pid: move pidfd_get_pid function to pid.c Minchan Kim
2020-02-28 22:22 ` Suren Baghdasaryan
2020-02-19 1:44 ` [PATCH v6 5/7] mm: support both pid and pidfd for process_madvise Minchan Kim
2020-02-28 22:41 ` Suren Baghdasaryan
2020-03-02 19:23 ` Minchan Kim
2020-03-02 19:38 ` Suren Baghdasaryan
2020-02-19 1:44 ` [PATCH v6 6/7] mm/madvise: employ mmget_still_valid for write lock Minchan Kim
2020-02-28 23:19 ` Suren Baghdasaryan
2020-03-02 7:33 ` Oleksandr Natalenko
2020-03-02 16:32 ` Suren Baghdasaryan
2020-02-19 1:44 ` [PATCH v6 7/7] mm/madvise: allow KSM hints for remote API Minchan Kim
2020-02-19 20:01 ` [PATCH v6 0/7] introduce memory hinting API for external process Andrew Morton
2020-02-19 21:05 ` Suren Baghdasaryan
2020-02-19 22:32 ` Minchan Kim
2020-02-19 22:51 ` Brian Geffon
2020-02-20 9:16 ` SeongJae Park [this message]
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=20200220091631.31949-1-sjpark@amazon.com \
--to=sjpark@amazon.com \
--cc=akpm@linux-foundation.org \
--cc=alexander.h.duyck@linux.intel.com \
--cc=bgeffon@google.com \
--cc=dancol@google.com \
--cc=hannes@cmpxchg.org \
--cc=jannh@google.com \
--cc=joaodias@google.com \
--cc=joel@joelfernandes.org \
--cc=linux-api@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-mm@kvack.org \
--cc=mhocko@suse.com \
--cc=minchan@kernel.org \
--cc=oleksandr@redhat.com \
--cc=shakeelb@google.com \
--cc=sj38.park@gmail.com \
--cc=sonnyrao@google.com \
--cc=sspatil@google.com \
--cc=surenb@google.com \
--cc=timmurray@google.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).