From: Rik van Riel <riel@redhat.com>
To: Peter Zijlstra <peterz@infradead.org>
Cc: linux-kernel@vger.kernel.org, mgorman@suse.de, mingo@kernel.org
Subject: Re: [PATCH] sched,numa: always try to migrate to preferred node at task_numa_placement time
Date: Fri, 06 Jun 2014 14:23:41 -0400 [thread overview]
Message-ID: <5392072D.6040605@redhat.com> (raw)
In-Reply-To: <20140606171801.GE11371@laptop.programming.kicks-ass.net>
On 06/06/2014 01:18 PM, Peter Zijlstra wrote:
> On Wed, Jun 04, 2014 at 04:33:15PM -0400, Rik van Riel wrote:
>> It is possible that at task_numa_placement time, the task's
>> numa_preferred_nid does not change, but the task is not
>> actually running on the preferred node at the time.
>>
>> In that case, we still want to attempt migration to the
>> preferred node.
>
> So we have that numa_migrate_retry which was supposed to keep kicking
> the task until it got where it needed to go.
It does, and it appears to work.
> But now you continuously kick from task_numa_placement().
No, we only kick from task_numa_placement() if the task is not
already running on its preferred nid.
> Clearly the retry thing didn't work, what happened? We got to the
> preferred nid, disabled the retry and got moved away again?
>
> Do we want to remove the retry logic in favour of this more aggressive
> form?
I think we want both. When we have fresh statistics, and we discover
that we are not running on our preferred nid, is there any reason
not to relocate to a better node?
Moving a task to another node is cheap, and moving it sooner means
we can end up avoiding migrating memory around twice.
>> @@ -1575,11 +1575,13 @@ static void task_numa_placement(struct task_struct *p)
>
>> + if (max_faults) {
>> + /* Set the new preferred node */
>> + if (max_nid != p->numa_preferred_nid)
>> + sched_setnuma(p, max_nid);
>> +
>> + if (task_node(p) != p->numa_preferred_nid)
>> + numa_migrate_preferred(p);
>> }
>>
>
>
--
All rights reversed
next prev parent reply other threads:[~2014-06-06 18:24 UTC|newest]
Thread overview: 5+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-06-04 20:33 [PATCH] sched,numa: always try to migrate to preferred node at task_numa_placement time Rik van Riel
2014-06-06 17:18 ` Peter Zijlstra
2014-06-06 18:23 ` Rik van Riel [this message]
2014-06-10 15:07 ` Peter Zijlstra
2014-06-19 12:36 ` [tip:sched/core] sched/numa: Always try to migrate to preferred node at task_numa_placement() time tip-bot for Rik van Riel
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=5392072D.6040605@redhat.com \
--to=riel@redhat.com \
--cc=linux-kernel@vger.kernel.org \
--cc=mgorman@suse.de \
--cc=mingo@kernel.org \
--cc=peterz@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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.