description/opensource: update android

This commit is contained in:
Cheng Jian
2022-08-14 17:16:20 +08:00
parent 6118819a50
commit 29b2a83fb8
2 changed files with 10 additions and 5 deletions
+9 -5
View File
@@ -3,19 +3,22 @@
[Android Kernel Features](https://elinux.org/Android_Kernel_Features)
| 公司 | github | MAIN|
|:-----:|:----------:|:-------:|
[各 Android 手机厂商 Bootloader 解锁 / 内核开源 / 解锁后保修情况](https://github.com/gatieme/MobileModels/blob/master/misc/bootloader-kernel-source.md)
| 公司 | github | MAIN |
|:---:|:------:|:----:|
| GOOGLE | [googlesource](https://android.googlesource.com/kernel/common) | NA |
| QCOM | [source.codeaurora](https://source.codeaurora.org/quic/la/kernel) | [codeaurora](https://www.codeaurora.org) |
| QCOM | [source.codeaurora](https://source.codeaurora.org/quic/la/kernel), [codelinaro](https://git.codelinaro.org/clo/la/kernel) | Code Aurora 是 Linux 基金会的一个协作项目, 为 QCOM 等 SoC 提供和维护 Linux 内核和 Android 等.<br>自 2022 年 4 月 1 日起, 高通创新中心公司已将其开源版本移至 [CodeLinaro](https://www.codeaurora.org) |
| HUAWEI | [consumer-opensource](https://consumer.huawei.com/en/opensource/detail/?siteCode=worldwide&productCode=Smartphones&fileType=openSourceSoftware&pageSize=10&curPage=1) | [opensource](https://consumer.huawei.com/en/opensource) |
| OnePlus | [OnePlus Open Source Software](https://github.com/OnePlusOSS) | [oneplus](https://www.oneplus.com/cn)
| HONOR | [HONOR-OpenSource](https://www.hihonor.com/global/opensource/detail.html) | [hihonor](https://www.hihonor.com/global/opensource) |
| XiaoMi | [Xiaomi_Kernel_OpenSource](https://github.com/MiCode/Xiaomi_Kernel_OpenSource), [mitwo-dev](https://github.com/mitwo-dev)| [micode](https://www.micode.net) |
| 魅族 | [meizuosc](https://github.com/meizuosc), [lvchaqiu](https://github.com/lvchaqiu)| [魅族内核团队](https://kernel.meizu.com) |
| 三星 | [opensource.samsung.com](https://opensource.samsung.com/uploadSearch?searchValue=kernel) | [BogList](https://opensource.samsung.com/community/blogList) |
| OPPO | [oppo-source](https://github.com/oppo-source) | NA |
| VIVO | [VIVO OpenSource](https://opensource.vivo.com/Project) | NA |
| CyanogenMod | [CyanogenMod](https://github.com/CyanogenMod) | [cyanogenmodroms](https://cyanogenmodroms.com/) |
| LineageOS-CyanogenMod 的重生 | [lineageos](https://github.com/LineageOS) | [lineageos](https://www.lineageos.org/) |
| OnePlus | [OnePlus Open Source Software](https://github.com/OnePlusOSS) | [oneplus](https://www.oneplus.com/cn)
# 2 CLOUD & SERVER
-------
@@ -86,6 +89,7 @@
2022 年, ChinaSys 学术开源创新平台已经为计算机系统研究人员提供了学术开源索引, 旨在汇聚系统研究相关的优秀开源学术项目, 方便系统研究人员检索和学习. 平台提供的学术开源索引整理了近年来学术会议论文的开源代码链接, 支持基于发表年份、研究领域及关键词的检索, 为系统研究人员提供便利. 截至目前, 平台共收集了 SOSP、OSDI、EuroSys 等 10 个著名学术会议中 652 篇论文的开源代码, 同时提炼出 131 个关键词用于索引. 同时, 学术开源索引还提供了基于合并请求(PR)的自添加功能, 欢迎系统研究人员提交更多的优秀学术开源项目.
参见 [【重磅】ChinaSys 学术开源创新平台开始试运行!](https://zhuanlan.zhihu.com/p/548714548)
[ChinaSys 学术开源创新平台](https://chinasys.org/opensource/program-index.html)
+1
View File
@@ -324,6 +324,7 @@ SCHED_IDLE 跟 SCHED_BATCH 一样, 是 CFS 中的一个策略, SCHED\_IDLE 的
| 2019/12/24 | Viresh Kumar <viresh.kumar@linaro.org> | [sched/fair: Load balance aggressively for SCHED_IDLE CPUs](https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/log/?id=323af6deaf70f204880caf94678350802682e0dc) | LOAD_BALANCE 感知 SCHED_IDLE 优化, SCHED_IDLE 的 CPU 虽然运行着进程但是在调度器看来其实也是空闲的, 应该积极地进行负载均衡 | v1 ☑✓ 5.6-rc1 | [LORE](https://lore.kernel.org/all/885b1be9af68d124f44a863f54e337f8eb6c4917.1577090998.git.viresh.kumar@linaro.org)<br>*-*-*-*-*-*-*-* <br>[LKML](https://lkml.org/lkml/2020/1/8/112) |
| 2021/02/22 | NA | [sched: pull tasks when CPU is about to run SCHED_IDLE tasks](https://lore.kernel.org/patchwork/patch/1382990) | 在 CPU 从 SCHED_NORMAL 进程切换到 SCHED_IDLE 任务之前, 尝试通过 load_balance 从其他核上 PULL SCHED_NORMAL 进程过来执行. | v2 | [2020/12/27 v1](https://lore.kernel.org/patchwork/patch/1356241), [2021/02/22 v2](https://lore.kernel.org/patchwork/patch/1143783) |
| 2022/02/17 | Abel Wu <wuyun.abel@bytedance.com> | [introduce sched-idle balancing](https://lore.kernel.org/all/20220217154403.6497-1-wuyun.abel@bytedance.com) | 当前负载平衡主要基于 cpu capacity 和 task util, 这在整体吞吐量的 POV 中是有意义的. 虽然如果存在 sched 闲置或闲置 RQ, 则可以通过减少过载 CFS RQ 的数量来完成一些改进. 当 CFS RQ 上有多个可伸缩的非闲置任务时(因为 schedidle CPU 被视为闲置 CPU), CFS RQ 被认为是过载的. 空闲任务计入 rq->cfs.idle_h_nr_running.<br>过载的 CFS RQ 可能会导致两种任务类型的性能问题:<br>1. 对于诸如 SCHED_NORMAL 之类的延迟关键任务, RQ 中的等待时间将增加并导致更高的 PCT99 延迟, 并且如果存在 SCHED_DILE, 批处理任务 SCHED_BATCH 可能无法充分利用 CPU 容量, 因此吞吐量较差.<br>所以简而言之, sched-idle balancing 的目标是让非闲置任务充分利用 CPU 资源.<br>为此, 我们主要做两件事:<br>1. 为 sched-idle 的 CPU 拉取 non-idle 的任务来运行, 或者将 overload CPU 上的任务拉取到 idle 的 CPU 上.<br>2. 防止在 RQ 中 PULL 出最后一个非闲置任务. 此外 overloaded CPUs 的掩码会周期性更新, 空闲路径在 LLC 域上. 这个 cpumask 还将在 SIS 中用作过滤器, 改善空闲的 CPU 搜索. | v1 ☐☑✓ | [LORE v1,0/5](https://lore.kernel.org/all/20220217154403.6497-1-wuyun.abel@bytedance.com)<br>*-*-*-*-*-*-*-* <br>[LORE v2,0/2](https://lore.kernel.org/lkml/20220409135104.3733193-1-wuyun.abel@bytedance.com) |
| 2022/08/09 | zhangsong <zhangsong34@huawei.com> | [sched/fair: Introduce priority load balance to reduce interference from IDLE tasks](https://lore.kernel.org/all/20220809132945.3710583-1-zhangsong34@huawei.com) | 对于 NORMAL 和 IDLE 任务的共存, 当 CFS 触发负载均衡时, 将 NORMAL(Latency Sensitive) 任务从繁忙的 src CPU 迁移到 dst CPU, 最后迁移 IDLE 任务是合理的. 这对于减少 SCHED_IDLE 任务的干扰非常重要.<br>但是当前的 cfs_tasks 链表同时包含了 NORMAL 任务和 SCHED_IDLE 等任务, 且没有按照优先级进行排序, 因此无法保证能及时从 busiest 的等待队列中拉出一定数量的正常任务而不是空闲任务<br>因此需要将 cfs_tasks 分成两个不同的列表, 并确保非空闲列表中的任务能够首先迁移. 该补丁引入 cfs_idle_tasks 链表维护 SCHED_IDLE 的任务, 原来的 cfs_tasks 只维护 SCHED_NORMAL 的任务. 负载均衡时优先迁移 SCHED_NORMAL 的任务.<br>测试发现: 少量的 NORMAL 任务与大量的 IDLE 任务搭配, 通过该补丁, NORMAL 任务延迟较当前降低约 5~10%. | v1 ☐☑✓ | [LORE](https://lore.kernel.org/all/20220809132945.3710583-1-zhangsong34@huawei.com)<br>*-*-*-*-*-*-*-* <br>[LORE v2](https://lore.kernel.org/lkml/20220810015636.3865248-1-zhangsong34@huawei.com)<br>*-*-*-*-*-*-*-* <br>[LORE v3](https://lore.kernel.org/lkml/20220810092546.3901325-1-zhangsong34@huawei.com) |
#### 1.1.5.4 cgroup SCHED_IDLE support