linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: "prakash.sangappa" <prakash.sangappa@oracle.com>
To: Dave Hansen <dave.hansen@intel.com>,
	Anshuman Khandual <khandual@linux.vnet.ibm.com>,
	Andrew Morton <akpm@linux-foundation.org>
Cc: linux-kernel@vger.kernel.org, linux-mm@kvack.org,
	linux-api@vger.kernel.org, mhocko@suse.com,
	kirill.shutemov@linux.intel.com, n-horiguchi@ah.jp.nec.com,
	drepper@gmail.com, rientjes@google.com,
	Naoya Horiguchi <nao.horiguchi@gmail.com>,
	Steven Sistare <steven.sistare@oracle.com>
Subject: Re: [RFC PATCH] Add /proc/<pid>/numa_vamaps for numa node information
Date: Wed, 12 Sep 2018 13:42:34 -0700	[thread overview]
Message-ID: <94ee0b6c-4663-0705-d4a8-c50342f6b483@oracle.com> (raw)
In-Reply-To: <aaca3180-7510-c008-3e12-8bbe92344ef4@intel.com>



On 05/09/2018 04:31 PM, Dave Hansen wrote:
> On 05/07/2018 06:16 PM, prakash.sangappa wrote:
>> It will be /proc/<pid>/numa_vamaps. Yes, the behavior will be
>> different with respect to seeking. Output will still be text and
>> the format will be same.
>>
>> I want to get feedback on this approach.
> I think it would be really great if you can write down a list of the
> things you actually want to accomplish.  Dare I say: you need a
> requirements list.
>
> The numa_vamaps approach continues down the path of an ever-growing list
> of highly-specialized /proc/<pid> files.  I don't think that is
> sustainable, even if it has been our trajectory for many years.
>
> Pagemap wasn't exactly a shining example of us getting new ABIs right,
> but it sounds like something along those is what we need.

Just sent out a V2 patch.  This patch simplifies the file content. It
only provides VA range to numa node id information.

The requirement is basically observability for performance analysis.

- Need to be able to determine VA range to numa node id information.
   Which also gives an idea of which range has memory allocated.

- The proc file /proc/<pid>/numa_vamaps is in text so it is easy to
   directly view.

The V2 patch supports seeking to a particular process VA from where
the application could read the VA to  numa node id information.

Also added the 'PTRACE_MODE_READ_REALCREDS' check when opening the
file /proc file as was indicated by Michal Hacko

The VA range to numa node information from this file can be used by pmap.

Here is a sample from a prototype change to pmap(procps) showing
numa node information, gathered from the new 'numa_vamaps' file.

$ ./rpmap -L -A 00000000006f8000,00007f5f730fe000 31423|more
31423:   bash
00000000006f8000     16K  N1 rw--- bash
00000000006fc000      4K  N0 rw--- bash
00000000006fd000      4K  N0 rw---   [ anon ]
00000000006fe000      8K  N1 rw---   [ anon ]
0000000000700000      4K  N0 rw---   [ anon ]
0000000000701000      4K  N1 rw---   [ anon ]
0000000000702000      4K  N0 rw---   [ anon ]
0000000000ce8000     52K  N0 rw---   [ anon ]
0000000000cf5000      4K  N1 rw---   [ anon ]
0000000000cf6000     28K  N0 rw---   [ anon ]
0000000000cfd000      4K  N1 rw---   [ anon ]
0000000000cfe000     28K  N0 rw---   [ anon ]
0000000000d05000    504K  N1 rw---   [ anon ]
0000000000d83000      8K  N0 rw---   [ anon ]
0000000000d85000    932K  N1 rw---   [ anon ]
0000000000e6e000      4K   - rw---   [ anon ]
0000000000e6f000    168K  N1 rw---   [ anon ]
00007f5f72ef4000      4K  N2 r-x-- libnss_files-2.23.so
00007f5f72ef5000     40K  N0 r-x-- libnss_files-2.23.so
00007f5f72eff000   2044K   - ----- libnss_files-2.23.so
00007f5f730fe000      4K  N0 r---- libnss_files-2.23.so
  total             3868K

-Prakash.

  reply	other threads:[~2018-09-12 20:43 UTC|newest]

Thread overview: 37+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-05-02  5:58 [RFC PATCH] Add /proc/<pid>/numa_vamaps for numa node information Prakash Sangappa
2018-05-02 21:33 ` Andrew Morton
2018-05-02 22:28   ` Dave Hansen
2018-05-02 23:17     ` prakash.sangappa
2018-05-03  8:46     ` Anshuman Khandual
2018-05-03 22:27       ` prakash.sangappa
2018-05-03 22:26         ` Dave Hansen
2018-05-07 23:22           ` prakash.sangappa
2018-05-08  0:05             ` Dave Hansen
2018-05-08  1:16               ` prakash.sangappa
2018-05-09 23:31                 ` Dave Hansen
2018-09-12 20:42                   ` prakash.sangappa [this message]
2018-09-12 20:57                     ` prakash.sangappa
2018-09-14  1:33                     ` Jann Horn
2018-09-14  6:21                       ` Michal Hocko
2018-09-14 12:49                         ` Jann Horn
2018-09-14 13:49                           ` Michal Hocko
2018-09-14 18:07                           ` Prakash Sangappa
2018-09-14 18:14                             ` Jann Horn
2018-05-02 23:43   ` prakash.sangappa
2018-05-03  8:57     ` Michal Hocko
2018-05-03 22:37       ` prakash.sangappa
2018-05-04 11:10         ` Michal Hocko
2018-05-03 18:03 ` Christopher Lameter
2018-05-03 22:39   ` prakash.sangappa
2018-05-04 11:12     ` Michal Hocko
2018-05-04 16:18       ` Prakash Sangappa
2018-05-10  7:42         ` Michal Hocko
2018-05-10 16:00           ` Prakash Sangappa
2018-05-11  6:39             ` Michal Hocko
2018-05-04 14:57     ` Christopher Lameter
2018-05-04 16:27       ` Prakash Sangappa
2018-05-07 14:47         ` Christopher Lameter
2018-05-07 22:50           ` prakash.sangappa
2018-05-08 12:53             ` Christopher Lameter
2018-09-12 23:02 Alexey Dobriyan
2018-09-13 22:17 ` prakash.sangappa

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=94ee0b6c-4663-0705-d4a8-c50342f6b483@oracle.com \
    --to=prakash.sangappa@oracle.com \
    --cc=akpm@linux-foundation.org \
    --cc=dave.hansen@intel.com \
    --cc=drepper@gmail.com \
    --cc=khandual@linux.vnet.ibm.com \
    --cc=kirill.shutemov@linux.intel.com \
    --cc=linux-api@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-mm@kvack.org \
    --cc=mhocko@suse.com \
    --cc=n-horiguchi@ah.jp.nec.com \
    --cc=nao.horiguchi@gmail.com \
    --cc=rientjes@google.com \
    --cc=steven.sistare@oracle.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).