linux-mm.kvack.org archive mirror
 help / color / mirror / Atom feed
From: Daniel Jordan <daniel.m.jordan@oracle.com>
To: John Hubbard <jhubbard@nvidia.com>,
	linux-kernel@vger.kernel.org,
	"linux-mm@kvack.org" <linux-mm@kvack.org>
Cc: Aaron Lu <aaron.lu@intel.com>,
	alex.kogan@oracle.com, akpm@linux-foundation.org,
	boqun.feng@gmail.com, brouer@redhat.com, dave@stgolabs.net,
	dave.dice@oracle.com, Dhaval Giani <dhaval.giani@oracle.com>,
	ktkhai@virtuozzo.com, ldufour@linux.vnet.ibm.com,
	Pavel.Tatashin@microsoft.com, paulmck@linux.vnet.ibm.com,
	shady.issa@oracle.com, tariqt@mellanox.com, tglx@linutronix.de,
	tim.c.chen@intel.com, vbabka@suse.cz, longman@redhat.com,
	yang.shi@linux.alibaba.com, shy828301@gmail.com,
	Huang Ying <ying.huang@intel.com>,
	subhra.mazumdar@oracle.com,
	Steven Sistare <steven.sistare@oracle.com>,
	jwadams@google.com, ashwinch@google.com, sqazi@google.com,
	Shakeel Butt <shakeelb@google.com>,
	walken@google.com, rientjes@google.com, junaids@google.com,
	Neha Agarwal <nehaagarwal@google.com>
Subject: Re: Plumbers 2018 - Performance and Scalability Microconference
Date: Mon, 10 Sep 2018 20:38:35 -0400	[thread overview]
Message-ID: <0f49f722-1759-f097-ff46-4ec7286dc69e@oracle.com> (raw)
In-Reply-To: <35c2c79f-efbe-f6b2-43a6-52da82145638@nvidia.com>

On 9/8/18 12:13 AM, John Hubbard wrote:
> I'm interested in the first 3 of those 4 topics, so if it doesn't conflict with HMM topics or
> fix-gup-with-dma topics, I'd like to attend.

Great, we'll add your name to the list.

> GPUs generally need to access large chunks of
> memory, and that includes migrating (dma-copying) pages around.
> 
> So for example a multi-threaded migration of huge pages between normal RAM and GPU memory is an
> intriguing direction (and I realize that it's a well-known topic, already). Doing that properly
> (how many threads to use?) seems like it requires scheduler interaction.

Yes, in past discussions of multithreading kernel work, there's been some discussion of a scheduler API that could answer "are there idle CPUs we could use to multithread?".

Instead of adding an interface, though, we could just let the scheduler do something it already knows how to do: prioritize.

Additional threads used to parallelize kernel work could run at the lowest priority (i.e. MAX_NICE).  If the machine is heavily loaded, these extra threads simply won't run and other workloads on the system will be unaffected.

There's the issue of priority inversion if one or more of those extra threads get started and are then preempted by normal-priority tasks midway through, but the main thread doing the job can just will its priority to each worker in turn once it's finished, so at most one thread will be active on a heavily loaded system, again leaving other workloads on the system undisturbed.

      parent reply	other threads:[~2018-09-11  0:38 UTC|newest]

Thread overview: 21+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-09-04 21:28 Daniel Jordan
2018-09-05  6:38 ` Mike Rapoport
2018-09-05 19:51   ` Pasha Tatashin
2018-09-06  5:49     ` Mike Rapoport
2018-09-05 15:10 ` Christopher Lameter
2018-09-05 16:17   ` Laurent Dufour
2018-09-05 17:11     ` Christopher Lameter
2018-09-05 23:01     ` Thomas Gleixner
2018-09-06  7:45       ` Laurent Dufour
2018-09-06  1:58   ` Huang, Ying
2018-09-06 14:41     ` Christopher Lameter
2018-09-07  2:17       ` Huang, Ying
2018-09-06 21:36     ` Mike Kravetz
2018-09-07  0:52       ` Hugh Dickins
2018-09-08  4:13 ` John Hubbard
2018-09-10 17:09   ` Waiman Long
2018-09-10 17:20     ` Davidlohr Bueso
2018-09-10 17:34       ` John Hubbard
2018-09-11  0:29         ` Daniel Jordan
2018-09-11 13:52           ` Waiman Long
2018-09-11  0:38   ` Daniel Jordan [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=0f49f722-1759-f097-ff46-4ec7286dc69e@oracle.com \
    --to=daniel.m.jordan@oracle.com \
    --cc=Pavel.Tatashin@microsoft.com \
    --cc=aaron.lu@intel.com \
    --cc=akpm@linux-foundation.org \
    --cc=alex.kogan@oracle.com \
    --cc=ashwinch@google.com \
    --cc=boqun.feng@gmail.com \
    --cc=brouer@redhat.com \
    --cc=dave.dice@oracle.com \
    --cc=dave@stgolabs.net \
    --cc=dhaval.giani@oracle.com \
    --cc=jhubbard@nvidia.com \
    --cc=junaids@google.com \
    --cc=jwadams@google.com \
    --cc=ktkhai@virtuozzo.com \
    --cc=ldufour@linux.vnet.ibm.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-mm@kvack.org \
    --cc=longman@redhat.com \
    --cc=nehaagarwal@google.com \
    --cc=paulmck@linux.vnet.ibm.com \
    --cc=rientjes@google.com \
    --cc=shady.issa@oracle.com \
    --cc=shakeelb@google.com \
    --cc=shy828301@gmail.com \
    --cc=sqazi@google.com \
    --cc=steven.sistare@oracle.com \
    --cc=subhra.mazumdar@oracle.com \
    --cc=tariqt@mellanox.com \
    --cc=tglx@linutronix.de \
    --cc=tim.c.chen@intel.com \
    --cc=vbabka@suse.cz \
    --cc=walken@google.com \
    --cc=yang.shi@linux.alibaba.com \
    --cc=ying.huang@intel.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