【内核调度、负载均衡】【boosted_task_util&task_util_est】

本文介绍了Linux内核调度中boosted_task_util和task_util_est的概念及其计算方法。boosted_task_util是任务利用率,考虑了margin值的增减;task_util_est用于估算任务的负载影响。同时提到了schedtune_task_margin和schedtune_margin在任务负载比例调整中的作用。
摘要由CSDN通过智能技术生成

boosted_task_util实际上包含两个部分,当前task的util加上margin值,margin就是将util的值给他扩大或者缩小一定的倍数

boosted_task_util

static inline unsigned long
boosted_task_util(struct task_struct *task)
{
	unsigned long util = task_util_est(task);//这里我们假设walt机制是open的
	long margin = schedtune_task_margin(task);//margin就是sign除以100

	trace_sched_boost_task(task, util, margin);//添加到内核trace log里面

	return util + margin;
}

task_util & task_util_est

task util = demand *1024 / window_size  ---其中demand为WALT机制中sum_history数组得到的max(latest值,平均值),window_size则是WALT机制中window的大小(默认为20ms

 

未开启boost    = (delta / window_s

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值