• 博客园logo
  • 会员
  • 众包
  • 新闻
  • 博问
  • 闪存
  • 赞助商
  • HarmonyOS
  • Chat2DB
    • 搜索
      所有博客
    • 搜索
      当前博客
  • 写随笔 我的博客 短消息 简洁模式
    用户头像
    我的博客 我的园子 账号设置 会员中心 简洁模式 ... 退出登录
    注册 登录
Sugars_DJ
博客园    首页    新随笔    联系   管理     

随笔分类 -  进程调度

负载均衡(Load Balance)- active load balance

摘要:前面一篇负载均衡文章中分析了periodic load balance,主要跟踪了其代码框架和流程。其中在load_balance函数中,会进行多次task 迁移尝试,如果多次尝试后仍然失败,那么就会判断是否需要进行更加激进的balance。 而激进的balance其中就包含了active load 阅读全文
posted @ 2023-01-03 17:15 Sugars_DJ 阅读(805) 评论(0) 推荐(0)
CFS buddy简析

摘要:在内存管理中,我们知道buddy伙伴系统;在进程调度中,也有一个CFS buddy的概念,但是CFS buddy与内存管理的buddy是不太一样的。这次我们就一起来简单看一下CFS buddy是什么。 代码基于CAF-kernel-4.19以及kernel-5.4,不免有错误之处,请指正。 一、数据 阅读全文
posted @ 2022-12-12 21:36 Sugars_DJ 阅读(392) 评论(0) 推荐(0)
负载均衡(Load Balance)- periodic load balance

摘要:负载均衡(Load balance),是为了将执行task的工作量较平均地配分到每个cpu上,达到功耗和性能平衡的一种机制。比如很多task都只放在cpu0上执行,既不能保证节省功耗(因为负载中,需要提升cpu频率;整体执行时间长),也不能保证task及时执行,从而导致卡顿,且耗电。而有了负载均衡就 阅读全文
posted @ 2022-10-29 15:12 Sugars_DJ 阅读(1934) 评论(0) 推荐(2)
Schedutil调频

摘要:只写总结了,哈哈偷懒,代码以前分析的没记录: 在 各个调用cpufreq_update_util()的路径中,会带有不同的flag,并触发cpu freq调节 cpu util作为计算cpu调节target freq的重要依据,首先会从系统中获取;其原始值对应WALT中:prev_runnable_ 阅读全文
posted @ 2022-07-20 14:19 Sugars_DJ 阅读(771) 评论(0) 推荐(0)
如何区分cpu_scale、max_freq_scale、cpu_orig_capacity、cpu_capacity?

摘要:CPU,即中央处理器,它最有用的属性就是算力性能。通过之前的知识学习,了解了linux kernel中对cpu算力形象化的表示:cpu capacity。 1、从cpu拓扑结构、sched_doamin/sched_group的建立过程来看,就包含了对cpu capcity的初始建立。 2、而cpu 阅读全文
posted @ 2021-12-02 15:36 Sugars_DJ 阅读(2144) 评论(2) 推荐(0)
CPU拓扑结构和调度域/组

摘要:如今CPU的核数从单核,到双核,再到4核、8核、甚至10核。但是我们知道Android使用的多核架构都是分大小核,或者现在最新的,除了大小核以外,还有一个超大核。 区分大小核,是因为它们之间的性能(算力),功耗是不同的,而且它们又以cluster来区分(小核在一个cluster,大核在另一个clus 阅读全文
posted @ 2021-11-20 11:07 Sugars_DJ 阅读(2828) 评论(1) 推荐(1)
CPU负载和系统负载计算原理

摘要:调度中的负载概念,与平时熟知的cpu占用率并不是一回事,两者间有较大差别。本文分析了cpu负载和系统负载,并非CPU使用率。代码基于CAF- SM8250 - kernel 4.19。 负载计算中,其实主要分为3大部分,由小到大依次为: 1、调度实体负载:update_load_avg() PELT 阅读全文
posted @ 2020-11-27 15:33 Sugars_DJ 阅读(5486) 评论(0) 推荐(1)
cpu capacity、task_util、cpu_util是如何计算的?

摘要:在进程调度中使用到了一些比较关键的参数,用来作为调度、cpu调频、EAS等关键功能的前提。 并且在相关模块中经常交替出现,比较容易混淆,这里单独将这些参数拎出来,做个记录。 cpu_capacity cpu_capacity是作为cpu算力的量化体现,代表着cpu性能的大小。数字越大,性能越高。 c 阅读全文
posted @ 2020-06-05 16:05 Sugars_DJ 阅读(6777) 评论(8) 推荐(3)
QTI EAS学习之find_energy_efficient_cpu

摘要:Energy Awareness Scheduler是由ARM和Linaro开发的新的linux kernel调度器。 原先CFS调度器是基于policy进行调度,并有不同的吞吐量。例如,有一个新的task创建,同时也有一个idle cpu时,CFS始终会把新的task放到这个idle cpu上运行 阅读全文
posted @ 2020-06-04 11:00 Sugars_DJ 阅读(3887) 评论(0) 推荐(0)
Linux内核进程调度overview(1)

摘要:一、概述 决定何时、如何选择一个新进程运行的这组规则叫做:调度策略(scheduling policy)。 Linux的调度是基于分时技术(time sharing):多个进程以“时间多路复用”方式运行,因为CPU的时间呗分成“片”(slice),给每个可运行进程分配一片。如果当前运行进程的时间片或 阅读全文
posted @ 2020-05-19 19:05 Sugars_DJ 阅读(741) 评论(0) 推荐(0)
Sched_Boost小结

摘要:之前遇到一个耗电问题,最后发现是/proc/sys/kernel/sched_boost节点设置异常,一直处于boost状态。导致所有场景功耗上升。 现在总结一下sched_boost的相关知识。 Sched_Boost sched_boost主要是通过影响Task placement的方式,来进行 阅读全文
posted @ 2020-04-27 14:50 Sugars_DJ 阅读(4941) 评论(0) 推荐(0)
SchedTune

摘要:本文仅是对kernel中的document进行翻译,便于理解。后续再添加代码分析。 1. 为何引入schedtune? schedutil是一个基于利用率驱动的cpu频率governor。它允许调度器为了cpu上运行的task选出最优的工作频率点(DVFS operating point: OPP) 阅读全文
posted @ 2020-03-27 12:50 Sugars_DJ 阅读(3283) 评论(0) 推荐(2)
Cpusets学习

摘要:1. cpusets 1.1 什么是cpusets cpusets基本功能是限制某一组进程只运行在某些cpu和内存节点上,举个简单例子:系统中有4个进程,4个内存节点,4个cpu.利用cpuset可以让第1,2个进程只运行在第1,2颗cpu上并且只在第1,2个内存节点上分配内存。cpuset是基于c 阅读全文
posted @ 2020-03-20 22:33 Sugars_DJ 阅读(8574) 评论(1) 推荐(2)
WALT(Window Assisted Load Tracking)学习

摘要:QCOM平台使用WALT(Window Assisted Load Tracking)作为CPU load tracking的方法;相对地,ARM使用的是PELT(Per-Entity Load Tracking)。 WALT的核心算法思想是:将一小段时间内的CPU loading情况计算出对应的结 阅读全文
posted @ 2020-02-26 16:53 Sugars_DJ 阅读(8027) 评论(11) 推荐(0)
进程调度函数scheduler_tick()的触发原理:周期PERIODIC定时器

摘要:参考文章: https://www.jb51.net/article/133579.htm https://blog.csdn.net/flaoter/article/details/77509553 https://www.cnblogs.com/arnoldlu/p/7078204.html 中 阅读全文
posted @ 2020-02-13 13:50 Sugars_DJ 阅读(3937) 评论(0) 推荐(0)
PELT(Per-Entity Load Tracking)

摘要:引言 对于Linux内核而言,做一款好的进程调度器是一项非常具有挑战性的任务,主要原因是在进行CPU资源分配的时候必须满足如下的需求: 1、它必须是公平的 2、快速响应 3、系统的throughput要高 4、功耗要小 其实你仔细分析上面的需求,这些目标其实是相互冲突的,但是用户在提需求的时候就是这 阅读全文
posted @ 2019-09-24 11:46 Sugars_DJ 阅读(1946) 评论(0) 推荐(0)

博客园  ©  2004-2025
浙公网安备 33010602011771号 浙ICP备2021040463号-3