lkml.org 
[lkml]   [2018]   [Apr]   [15]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
SubjectRe: [PATCH 1/4 v4] sched/pelt: Move pelt related code in a dedicated file
From
Date
On 04/15/2018 02:16 PM, Vincent Guittot wrote:
> On 15 April 2018 at 13:58, Dietmar Eggemann <dietmar.eggemann@arm.com> wrote:
>> On 03/16/2018 12:25 PM, Vincent Guittot wrote:
>>>
>>> We want to track rt_rq's utilization as a part of the estimation of the
>>> whole rq's utilization. This is necessary because rt tasks can steal
>>> utilization to cfs tasks and make them lighter than they are.
>>> As we want to use the same load tracking mecanism for both and prevent
>>> useless dependency between cfs and rt code, pelt code is moved in a
>>> dedicated file.
>>
>>
>> This would mean that we introduce function calls into the cfs scheduler
>> fast-path, something we avoided so far (e.g. the cpu and frequency
>> invariance hooks). Are we OK with that?
>>
>> Quentin mentioned this already during v3 review back in December.
>
> Yes and I hadn't seen any differences in the code size with the patch
> which should have been the case if inline function where replaced by
> function call

I see a diff (e.g. for arm64 defconfig):

6d626e0aaf91 - (HEAD -> tip/sched/core_rt_rq_util_tracking) sched/nohz:
monitor rt utilization (2018-04-15 Vincent Guittot)
3111c6206f0c - cpufreq/schedutil: add rt utilization tracking
(2018-04-15 Vincent Guittot)
62e103d266ed - sched/rt: add rt_rq utilization tracking (2018-04-15
Vincent Guittot)
8f78fef6b1a2 - sched/pelt: Move pelt related code in a dedicated file
(2018-04-15 Vincent Guittot)
31e77c93e432 - (tip/sched/core_rt_rq_util_tracking_base) sched/fair:
Update blocked load when newly idle (2018-03-09 Vincent Guittot)

deggeman-mac:/opt/git/kernel_org:tip/sched/core_rt_rq_util_tracking$
size vmlinux
text data bss dec hex filename
11286856 6154896 410296 17852048 1106690 vmlinux

versus:

31e77c93e432 - (HEAD -> tip/sched/core_rt_rq_util_tracking_base)
sched/fair: Update blocked load when ne$
ly idle (2018-03-09 Vincent Guittot)

deggeman-mac:/opt/git/kernel_org:tip/sched/core_rt_rq_util_tracking_base$
size vmlinux
text data bss dec hex filename

11295048 6154896 410296 17860240 1108690 vmlinux

So I assume that in kernel/sched/fair.o:

U __update_load_avg_blocked_se
U __update_load_avg_cfs_rq
U __update_load_avg_se

are function calls now.






\
 
 \ /
  Last update: 2018-04-15 15:28    [W:0.037 / U:0.396 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site