From: Rik van Riel <riel@redhat.com>
To: Srikar Dronamraju <srikar@linux.vnet.ibm.com>
Cc: linux-kernel@vger.kernel.org, peterz@infradead.org,
mingo@kernel.org, mgorman@suse.de
Subject: Re: [PATCH] sched,numa: document and fix numa_preferred_nid setting
Date: Mon, 22 Jun 2015 18:28:55 -0400 [thread overview]
Message-ID: <55888C27.7010100@redhat.com> (raw)
In-Reply-To: <20150622161322.GA32412@linux.vnet.ibm.com>
On 06/22/2015 12:13 PM, Srikar Dronamraju wrote:
>> + * migrating the task to where it really belongs.
>> + * The exception is a task that belongs to a large numa_group, which
>> + * spans multiple NUMA nodes. If that task migrates into one of the
>> + * workload's active nodes, remember that node as the task's
>> + * numa_preferred_nid, so the workload can settle down.
>> */
>> if (p->numa_group) {
>> if (env.best_cpu == -1)
>> @@ -1513,7 +1520,7 @@ static int task_numa_migrate(struct task_struct *p)
>> nid = env.dst_nid;
>>
>> if (node_isset(nid, p->numa_group->active_nodes))
>> - sched_setnuma(p, env.dst_nid);
>> + sched_setnuma(p, nid);
>> }
>>
>> /* No better CPU than the current one was found. */
>>
>
> When I refer to the Modified Rik's patch, I mean to remove the
> node_isset() check before the sched_setnuma. With that change, we kind
> of reduce the numa02 and 1JVMper System regression while getting as good
> numbers as Rik's patch with 2JVM and 4JVM per System.
>
> The idea behind removing the node_isset check is:
> node_isset is mostly used to track mem movement to nodes where cpus are
> running and not vice versa. This is as per comment in
> update_numa_active_node_mask. There could be a sitation where task memory
> is all in a node and the node has capacity to accomodate but no tasks
> associated with the task have run enuf on that node. In such a case, we
> shouldnt be ruling out migrating the task to the node.
That is a good point.
However, if overriding the preferred_nid that task_numa_placement
identified is a good idea in task_numa_migrate, would it also be
a good idea for tasks that are NOT part of a numa group?
What are the consequences of never setting preferred_nid from
task_numa_migrate? (we would try to migrate the task to a
better node more frequently)
What are the consequences of always setting preferred_nid from
task_numa_migrate? (we would only try migrating the task once,
and it could get stuck in a sub-optimal location)
The patch seems to work, but I do not understand why, and would
like to know your ideas on why you think the patch works.
I am really not looking forward to the idea of maintaining code
that nobody understands...
--
All rights reversed
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
Please read the FAQ at http://www.tux.org/lkml/
prev parent reply other threads:[~2015-06-22 22:29 UTC|newest]
Thread overview: 14+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-06-16 19:54 [PATCH] sched,numa: document and fix numa_preferred_nid setting Rik van Riel
2015-06-18 15:55 ` Srikar Dronamraju
2015-06-18 16:06 ` Rik van Riel
2015-06-18 16:41 ` Srikar Dronamraju
2015-06-18 17:00 ` Rik van Riel
2015-06-18 17:11 ` Srikar Dronamraju
2015-06-19 17:16 ` Srikar Dronamraju
2015-06-19 17:52 ` Rik van Riel
2015-06-22 16:04 ` Srikar Dronamraju
2015-06-22 16:48 ` Srikar Dronamraju
2015-06-18 16:12 ` Ingo Molnar
2015-06-18 18:16 ` Rik van Riel
2015-06-22 16:13 ` Srikar Dronamraju
2015-06-22 22:28 ` Rik van Riel [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=55888C27.7010100@redhat.com \
--to=riel@redhat.com \
--cc=linux-kernel@vger.kernel.org \
--cc=mgorman@suse.de \
--cc=mingo@kernel.org \
--cc=peterz@infradead.org \
--cc=srikar@linux.vnet.ibm.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 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.