[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <20180227071020.GA24633@rapoport-lnx>
Date: Tue, 27 Feb 2018 09:10:20 +0200
From: Mike Rapoport <rppt@...ux.vnet.ibm.com>
To: Nathan Hjelm <hjelmn@...com>
Cc: Open MPI Developers <devel@...ts.open-mpi.org>,
Andrei Vagin <avagin@...nvz.org>,
Arnd Bergmann <arnd@...db.de>, Jann Horn <jannh@...gle.com>,
rr-dev@...illa.org, linux-api@...r.kernel.org,
linux-kernel@...r.kernel.org,
Josh Triplett <josh@...htriplett.org>, criu@...nvz.org,
linux-mm@...ck.org, gdb@...rceware.org,
Alexander Viro <viro@...iv.linux.org.uk>,
Greg KH <gregkh@...uxfoundation.org>,
linux-fsdevel@...r.kernel.org,
Andrew Morton <akpm@...ux-foundation.org>,
Thomas Gleixner <tglx@...utronix.de>,
Michael Kerrisk <mtk.manpages@...il.com>
Subject: Re: [OMPI devel] [PATCH v5 0/4] vm: add a syscall to map a process
memory into a pipe
On Mon, Feb 26, 2018 at 09:38:19AM -0700, Nathan Hjelm wrote:
> All MPI implementations have support for using CMA to transfer data
> between local processes. The performance is fairly good (not as good as
> XPMEM) but the interface limits what we can do with to remote process
> memory (no atomics). I have not heard about this new proposal. What is
> the benefit of the proposed calls over the existing calls?
The proposed system call call that combines functionality of
process_vm_read and vmsplice [1] and it's particularly useful when one
needs to read the remote process memory and then write it to a file
descriptor. In this case a sequence of process_vm_read() + write() calls
that involves two copies of data can be replaced with process_vm_splice() +
splice() which does not involve copy at all.
[1] https://lkml.org/lkml/2018/1/9/32
> -Nathan
>
> > On Feb 26, 2018, at 2:02 AM, Pavel Emelyanov <xemul@...tuozzo.com> wrote:
> >
> > On 02/21/2018 03:44 AM, Andrew Morton wrote:
> >> On Tue, 9 Jan 2018 08:30:49 +0200 Mike Rapoport <rppt@...ux.vnet.ibm.com> wrote:
> >>
> >>> This patches introduces new process_vmsplice system call that combines
> >>> functionality of process_vm_read and vmsplice.
> >>
> >> All seems fairly strightforward. The big question is: do we know that
> >> people will actually use this, and get sufficient value from it to
> >> justify its addition?
> >
> > Yes, that's what bothers us a lot too :) I've tried to start with finding out if anyone
> > used the sys_read/write_process_vm() calls, but failed :( Does anybody know how popular
> > these syscalls are? If its users operate on big amount of memory, they could benefit from
> > the proposed splice extension.
> >
> > -- Pavel
--
Sincerely yours,
Mike.
Powered by blists - more mailing lists