自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

悟空明镜

寻道在前方

  • 博客(8)
  • 收藏
  • 关注

原创 【cpufreq governor】cpu util 和 cpu margin怎么计算的

在计算cpu的util(函数sugov_get_util)期间需要使用margin来补偿util(在看schedutil governor的时候,不仅仅有cpu 的util margin,还有freq margin),得到最终的util+=margin 那么这个margin怎么计算的呢? sugov_update_shared–>sugov_get_util–>boosted_cp...

2019-04-26 18:31:09 5048

原创 WALT Window Assisted Load Tracking的思想和实现原理

1.主要是计算如下几个结构体的元素:struct rq { /*必须尽快明白这几个参数的含义*/ ………………………………………………………….#ifdef CONFIG_SCHED_WALT u64 cumulative_runnable_avg; u64 window_start; u64 curr_runnable_sum; u...

2019-04-26 18:31:03 6414 5

原创 [cpufreq governor] scale_freq_capacity/scale_cpu_capacity怎么计算的

定义的地方#ifdef CONFIG_CPU_FREQ #define arch_scale_freq_capacity cpufreq_scale_freq_capacity extern unsigned long cpufreq_scale_freq_capacity(struct sched_domain *sd, int cpu); extern unsigned l...

2019-04-26 18:30:48 1900

原创 [cpufreq governor] schedutil governor解析

1.schedutil governor相关的结构体说明struct sugov_policy { struct cpufreq_policy *policy; /*cpu freq的policy*/ struct sugov_tunables *tunables; /*tunable结构体,根据用户需求改变*/ struct list_head tuna...

2019-04-26 18:30:38 13102

原创 [scheduler]调度器如何判断cpu_overutilized?

计算过程如下:static bool cpu_overutilized(int cpu) { return __cpu_overutilized(cpu, 0, NULL); } static bool __cpu_overutilized(int cpu, int delta, struct task_struct *p) { struct rq ...

2019-04-26 18:30:14 2430

原创 [scheduler]cfs调度算法如何判断task是否是Misfit task?

什么是Misfit task,满足如下几个条件的task就是Misfit task,是做负载均衡的一个条件当前cpu的capacity不是系统最大的cpu capacity当前task的util(修正后的)不超过当前cpu的capacity的90%调度器什么时候检测Misfit task?当pick next task时候,检测是否有Misfit task当更新task gr...

2019-04-26 18:29:59 1816 2

原创 interactive governor study for android

interactive governor全部思考思路:1、Interactive governor 初始化,一些定时器绑定的函数,创建内核线程进行调频并注册interative governor(对应cpufreq_interactive_initfunction)。2、注册governor执行函数:cpufreq_governor_interactive这个函数通过三个不同的eve...

2019-04-26 18:29:42 4770 2

原创 ARM调度域/调度组之概念理解

CPU拓扑结构存在下面三种:SMT Level 超线程处理器的一个核心MC Level 多核CPU的一个核心DIE Level 一个物理CPU的晶片(注意不是package,package是封装好了的,肉眼看到的CPU处理器)cpu最小级别的就是超线程处理器的一个smt核,次小的一级就是一个多核cpu的核,然后就是一个物理cpu封装,再往后就是cpu阵列,根据这些cpu级别的不同,...

2019-04-26 18:29:21 4926 1

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除