lkml.org 
[lkml]   [2020]   [Apr]   [16]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
From
SubjectRe: [PATCH v3 9/9] sched/topology: Define and use shortcut pointers for wakeup sd_flag scan
Date

On 16/04/20 16:58, Vincent Guittot wrote:
>> ---
>> if (wake_flags & WF_TTWU) {
>> if (want_affine) {
>> // We can cache that at topology buildup
>> sd = highest_flag_domain(cpu, SD_WAKE_AFFINE);
>>
>> if (cpumask_test_cpu(prev_cpu, sched_domain_span(sd) &&
>> cpu != prev_cpu)
>> new_cpu = wake_affine();
>>
>> }
>> // Directly go to select_idle_sibling()
>> goto sis;
>> }
>>
>> // !want_affine logic here
>> ---
>>
>> This in turns mean we could get rid of SD_BALANCE_WAKE entirely... I'm a
>> bit more reluctant to that only because the last SD_BALANCE_WAKE setter was
>
> For now, we should probably skip the additional test above: "if
> (wake_flags & WF_TTWU) {" and keep SD_BALANCE_WAKE so we will continue
> to loop in case of !want_affine.
>
> We can imagine that we might want at the end to be a bit more smart
> for SD_BALANCE_WAKE and the slow path... like with the latency nice
> proposal and latency-nice=19 as a example
>

Good point. I'll go for the first option and see where I end up; I'd like
to cache the other domain pointers if possible, I'll do some benchmarking
and see if I can do that without another switch case.

>> removed fairly recently, see
>> a526d466798d ("sched/topology: Remove SD_BALANCE_WAKE on asymmetric capacity systems")

\
 
 \ /
  Last update: 2020-04-16 22:55    [W:0.054 / U:0.024 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site