lkml.org 
[lkml]   [2021]   [Mar]   [22]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
SubjectRe: [PATCH 2/6] sched: tagging interface for core scheduling
From
Date
On 3/20/21 11:46 AM, Peter Zijlstra wrote:
> On Fri, Mar 19, 2021 at 04:32:49PM -0400, Joel Fernandes (Google) wrote:
>> From: Josh Don <joshdon@google.com>
>>
>> Adds per-task and per-cgroup interfaces for specifying which tasks can
>> co-execute on adjacent SMT hyperthreads via core scheduling.
>>
>> The per-task interface hooks are implemented here, but are not currently
>> used. The following patch adds a prctl interface which then takes
>> advantage of these.
>>
>> The cgroup interface can be used to toggle a unique cookie value for all
>> descendent tasks, preventing these tasks from sharing with any others.
>> See Documentation/admin-guide/hw-vuln/core-scheduling.rst for a full
>> rundown.
>>
>> One important property of this interface is that neither the per-task
>> nor the per-cgroup setting overrides the other. For example, if two
>> tasks are in different cgroups, and one or both of the cgroups is tagged
>> using the per-cgroup interface, then these tasks cannot share, even if
>> they use the per-task interface to attempt to share with one another.
>>
>> The above is implemented by making the overall core scheduling cookie a
>> compound structure, containing both a task-level cookie and a
>> group-level cookie. Two tasks will only be allowed to share if all
>> fields of their respective cookies match.
>>
>> Core scheduler has extra overhead. Enable it only for machines with
>> more than one SMT hardware thread.
>
> Oh man.. I'd soooo hoped to first see the simple task interface and then
> see the cgroup patch on top of that... I'll see if I can flip them
> myself (on monday).

Peter, given we need to rebase this and we have some cleanup, we can go ahead and flip the order if you have not yet
done so yet.

-chrish

\
 
 \ /
  Last update: 2021-03-22 19:01    [W:0.136 / U:0.032 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site