big.LITTLE
big.LITTLE
1 多核异构调度算法
http://www.linaro.org/?s=big.LITTLE
http://git.linaro.org
https://wiki.linaro.org/Archived%20LSK%20Versions
big.LITTLE CPUs can be configured in 2 modes of operation:
IKS – In Kernel Switcher (also known as CPU Migration)GTS - Global Task Scheduling (also known as big.LITTLE MP)
and another schuler for ISA
Cluser Migration in kernel for Nvidia Tegra3
调度算法 | 项目 | 地址 |
---|---|---|
GTS | big.LITTLE-mp | http://git.linaro.org/arm/big.LITTLE/mp.git |
IKS | switcher | http://git.linaro.org/arm/big.LITTLE/switcher.git |
2 参考
2.1 big.LITTLE
内核中cpufreq调频机制的实现
-
传统的Cpufreq-Governor, 均是基于采样的,
-
基于调度器的 CPU 调频策略
linaro 实现了(cpufreq_sched), 直接由内核调度器来设置 CPU 频率,
(由于会增加调度器的负担而被内核 mainline 弃用)内核社区最近出现的新机制 - utilization update callback, 基于回调机制,
linux-4.7的之后合并入内核mainline
基于调度器的 CPU 调频机制
Cpufreq Governor 内核源码
New ‘interactive’ governor
Cpufreq_sched 补丁
utilization update callback
Schedutil 补丁
其他参照
如何评价 ARM 的 big.LITTLE 大小核切换技术?
tegra3 CPU auto hotplug和Big/little switch工作的基本原理
低功耗CPU是怎么做到的?
大小核心切换实现省电 big.LITTLE详解, http://www.icpcw.com/Parts/CPU/New/2967/296709_all.htm
http://www.linaro.org/?s=big.LITTLE
big.LITTLE Software Update
Energy Aware Scheduling (EAS) progress update
ARM大小核big.LITTLE的HMP调度器
三星宣布异核多处理方案,Exynos 5 Octa 将成为真正的 8 核芯片
How is Heterogeneous Multi-Processing (HMP) scheduling implemented in Linux Kernel (Samsung Exynos5422)?
Ten Things to Know About big.LITTLE
ODROID-XU4
【转】有关Big.Little MP的一些说明
2.2 cpufreq
关闭cpu自动降频
Linux系统下CPU频率的调整
Linux系统CPU频率调整工具使用
Ubuntu 下对CPU进行降频
linux下设置CPU频率
Linux cpufreq 机制了解
cpufreq变频子系统
(转)关闭cpu
CPU frequency scaling (简体中文)
patch to add support for scaling_available_frequencies for cm7
[Gb][Thunderbolt]How To Enable Scaling_Available_Frequencies
大开眼界:Ubuntu下10个厉害的Indicator小程序
Power Management Guide 电源管理指南, 电源管理指南
centos内核编译选项参考
为笔记本电脑用户配置cpufreqd
变更CPU频率管理策略
告诉你Ubuntu笔记本节能的小方法!
linux cpufreq framework(1)_概述
金步国先生文章(一)–关于编译2.6.X内核的选项
减少 Linux 耗电,第 2 部分: 一般设置和与调控器相关的设置
DVFS–动态电压频率调整, http://blog.csdn.net/green1900/article/details/40742663, http://blog.csdn.net/myarrow/article/details/8089049
ubuntu-CPU频率调节
Cpufreq应用程序在arm开发板端的交叉编译及实现
Linux系统下CPU频率的调整
Linux 2.6 menuconfig内核编译配置选项详解
CPU频率调节(SpeedStep, PowerNow)
Linux内核的cpufreq(变频)机制
ArchLinux 电源管理:acpid + cpufreq + pm-utils
使用cpufreq-bench评估cpufreq策略对系统性能的影响
Linux CPU core的电源管理(2)_cpu topology
2.3 其他内核参照
2.3.1 魅族
描述 | 地址 |
---|---|
魅族内核 | github, 博客 |
*m681(魅族m3note)
内核最后更新日期 2016-09-23
https://github.com/meizuosc/m681/blob/master/arch/arm64/configs/m3note_defconfig
CPU : Helio P10(MT6755M), 配备Mali-T860 图形处理器
采用8核心(big.LITTLE) ARM Cortex-A53 1.8GHz x4 + ARM Cortex-A53 1.0GHz x4
m865(魅族mx6)
内核最后更新日期 2016-08-15
https://github.com/meizuosc/m685/blob/master/arch/arm64/configs/mx6_defconfig
CPU : 联发科Helio X20 10核心处理器, 图形处理器为700MHz的ARM Mali-T880 MP4。
Helio X20选用三集群big.LITTLE架构,芯片内部集成
-
2颗2.3-2.5GHz Cortex-A72核心、
-
4颗2GHz Cortex-A53核心,
-
以及另外4颗1.4GHz Cortex-A53核心
与传统的双集群big.LITTLE架构相比,更复杂的三集群设计细化了各个核心的处理任务,
-
Cortex-A72负责超高负荷运算,
-
高频Cortex-A53核心处理重度任务,
-
低频Cortex-A53核心辅助降低整体功耗。
变频 | big.LITTLE |
---|---|
定频低频 | 定核大核 |
定频中频 | 定核小核 |
定频高频 | 变核交换 |
变频 | 变核热插拔 |
1–频率调节的指标
2–能耗比选择大小核
3–负载决定开关核和任务迁移以及交换big.LITTLE
相关文章:
big.LITTLE
big.LITTLE 1 多核异构调度算法 http://www.linaro.org/?sbig.LITTLE http://git.linaro.org https://wiki.linaro.org/Archived%20LSK%20Versions big.LITTLE CPUs can be configured in 2 modes of operation: IKS – In Kernel Switcher (also known as CPU Migration…...
汤臣倍健,三七互娱,得物,顺丰,快手,游卡,oppo,康冠科技,途游游戏,埃科光电25秋招内推
汤臣倍健,三七互娱,得物,顺丰,快手,游卡,oppo,康冠科技,途游游戏,埃科光电25秋招内推 ①得物 【八大职类】技术、供应链、产品、运营、设计、职能、商品研究、风控等大类…...
再谈c++模板
前言 在前面我们曾经简单的介绍过c的模板,但还并不全面,我们通过stl容器的学习加深了我们对c这门语言的理解。那么今天我们就再来谈一谈c模板,对模板再进行一点简单的补充 非类型模板参数 前面我们介绍的是类型模板参数,简单理…...
9.11 codeforces Div 2
文章目录 9.11 Div 2A. Doras Set(删除三个互质数)思路代码 B. Index and Maximum Value(范围加减1求max)思路代码 C. Dora and C(加a/b,最小化极差)思路代码 9.11 Div 2 Dashboard - Codeforces Round 969 (Div. 2) …...

二级菜单的两种思路(完成部分)
第一种 <el-form ref"formRef" :model"form" :rules"rules" label-width"120px"><el-form-item label"类型" prop"type"><el-select v-model"form.type" placeholder"请选择类型&q…...

【机器学习导引】ch2-模型评估与选择
文章目录 经验误差与过拟合 (Empirical error &overfitting)1. **均方误差(Mean Squared Error, MSE)**2. **均方根误差(Root Mean Squared Error, RMSE)**3. **平均绝对误差(Mean Absolute…...
二开ihoneyBakFileScan备份扫描
优点:可以扫描根据域名生成的扫描备份的扫描工具 二开部分:默认网址到字典(容易被封),二开字典到网址(类似test404备份扫描规则),同时把被封不能扫描的网址保存到waf_url.txt 中&am…...

leetcode21. 合并两个有序链表
思路: 用一个新链表来表示合并后的有序链表, 每次比较两个链表,将较小的那个结点存储至新链表中 # Definition for singly-linked list. # class ListNode(object): # def __init__(self, val0, nextNone): # self.val val # …...

搭建 WordPress 及常见问题与解决办法
浪浪云活动链接 :https://langlangy.cn/?i8afa52 文章目录 环境准备安装 LAMP 堆栈 (Linux, Apache, MySQL, PHP)配置 MySQL 数据库 安装 WordPress配置 WordPress常见问题及解决办法数据库连接错误白屏问题插件或主题冲突内存限制错误 本文旨在介绍如何在服务器上…...

《ORANGE‘s 一个操作系统的实现》--保护模式进阶
保护模式进阶 大内存读写 GDT段 ;GDT [SECTION .gdt] ; 段基址, 段界限 , 属性 LABEL_GDT: Descriptor 0, 0, 0 ; 空描述符 LABEL_DESC_NORMAL: Descriptor 0, 0ffffh, DA_DRW ; Normal 描…...

【可变参模板】可变参类模板
可变参类模板也和可变参函数模板一样,允许模板定义含有0到多个(任意个)模板参数。可变参类模板参数包的展开方式有多种,以下介绍几种常见的方法。 一、递归继承展开 1.1类型模板参数包的展开 首先先看下面的代码: /…...
Linux 递归删除大量的文件
一般情况下 在 Ubuntu 中,递归删除大量文件和文件夹可以通过以下几种方式快速完成。常用的方法是使用 rm 命令,配合一些适当的选项来提高删除速度和效率。 1. 使用 rm 命令递归删除 最常见的方式是使用 rm 命令的递归选项 -r 来删除目录及其所有内容。…...

设计一个算法,找出由str1和str2所指向两个链表共同后缀的起始位置
假定采用带头结点的单链表保存单词,当两个单词有相同的后缀时,则可共享相同的后缀存储空间,例如,’loading’和’being’的存储映像如下图所示。 设str1和str2分别指向两个单词所在单链表的头结点,链表结点结构为 data…...
Python中如何判断一个变量是否为None
在Python中,判断一个变量是否为None是一个常见的需求,特别是在处理可选值、默认值或者是在函数返回结果可能不存在时。虽然这个操作本身相对简单,但围绕它的讨论可以扩展到Python的哲学、类型系统、以及如何在不同场景下优雅地处理None值。 …...

表观遗传系列1:DNA 甲基化以及组蛋白修饰
1. 表观遗传 表观遗传信息很多为化学修饰,包括 DNA 甲基化以及组蛋白修饰,即DNA或蛋白可以通过化学修饰添加附加信息。 DNA位于染色质(可视为微环境)中,并不是裸露的,因此DNA分子研究需要跟所处环境结合起…...
Android 跳转至各大应用商店应用详情页
测试通过机型品牌: 华为、小米、红米、OPPO、一加、Realme、VIVO、IQOO、荣耀、魅族、三星 import android.content.ActivityNotFoundException; import android.content.Context; import android.content.Intent; import android.content.pm.PackageInfo; import …...
Pywinauto鼠标操作指南
Pywinauto是一个强大的Python库,用于自动化Windows桌面应用程序的测试。它提供了一系列工具和API来模拟用户输入,包括键盘、鼠标事件,以及与各种窗口控件交互的能力。本文将详细介绍如何使用Pywinauto来执行鼠标操作,并通过一些示…...

VRAY云渲染动画怎么都是图片?
动画实际上是由一系列连续的静态图像(帧)组成的,当这些帧快速连续播放时,就形成了动画效果。每一帧都是一个单独的图片,需要单独渲染。 云渲染农场的工作方式: 1、用户将3D场景文件和动画设置上传到云渲染…...
共享内存(C语言)
目录 一、引言 二、共享内存概述 1.什么是共享内存 2.共享内存的优势 三、共享内存的实现 1.创建共享内存 2.关联共享内存 3.访问共享内存 4.解除共享内存关联 5.删除共享内存 四、共享内存应用实例 五、总结 本文将深入探讨C语言中的共享内存技术,介绍其原理、…...

《JavaEE进阶》----16.<Mybatis简介、操作步骤、相关配置>
本篇博客讲记录: 1.回顾MySQL的JDBC操作 2..Mybatis简介、Mybatis操作数据库的步骤 3.Mybatis 相关日志的配置(日志的配置、驼峰自动转换的配置) 前言 之前学习应用分层时我们知道Web应用程序一般分为三层,Controller、Service、D…...

C++_核心编程_多态案例二-制作饮品
#include <iostream> #include <string> using namespace std;/*制作饮品的大致流程为:煮水 - 冲泡 - 倒入杯中 - 加入辅料 利用多态技术实现本案例,提供抽象制作饮品基类,提供子类制作咖啡和茶叶*//*基类*/ class AbstractDr…...

【大模型RAG】Docker 一键部署 Milvus 完整攻略
本文概要 Milvus 2.5 Stand-alone 版可通过 Docker 在几分钟内完成安装;只需暴露 19530(gRPC)与 9091(HTTP/WebUI)两个端口,即可让本地电脑通过 PyMilvus 或浏览器访问远程 Linux 服务器上的 Milvus。下面…...
【磁盘】每天掌握一个Linux命令 - iostat
目录 【磁盘】每天掌握一个Linux命令 - iostat工具概述安装方式核心功能基础用法进阶操作实战案例面试题场景生产场景 注意事项 【磁盘】每天掌握一个Linux命令 - iostat 工具概述 iostat(I/O Statistics)是Linux系统下用于监视系统输入输出设备和CPU使…...
相机Camera日志分析之三十一:高通Camx HAL十种流程基础分析关键字汇总(后续持续更新中)
【关注我,后续持续新增专题博文,谢谢!!!】 上一篇我们讲了:有对最普通的场景进行各个日志注释讲解,但相机场景太多,日志差异也巨大。后面将展示各种场景下的日志。 通过notepad++打开场景下的日志,通过下列分类关键字搜索,即可清晰的分析不同场景的相机运行流程差异…...
WEB3全栈开发——面试专业技能点P2智能合约开发(Solidity)
一、Solidity合约开发 下面是 Solidity 合约开发 的概念、代码示例及讲解,适合用作学习或写简历项目背景说明。 🧠 一、概念简介:Solidity 合约开发 Solidity 是一种专门为 以太坊(Ethereum)平台编写智能合约的高级编…...

Spring数据访问模块设计
前面我们已经完成了IoC和web模块的设计,聪明的码友立马就知道了,该到数据访问模块了,要不就这俩玩个6啊,查库势在必行,至此,它来了。 一、核心设计理念 1、痛点在哪 应用离不开数据(数据库、No…...
【Nginx】使用 Nginx+Lua 实现基于 IP 的访问频率限制
使用 NginxLua 实现基于 IP 的访问频率限制 在高并发场景下,限制某个 IP 的访问频率是非常重要的,可以有效防止恶意攻击或错误配置导致的服务宕机。以下是一个详细的实现方案,使用 Nginx 和 Lua 脚本结合 Redis 来实现基于 IP 的访问频率限制…...
uniapp 集成腾讯云 IM 富媒体消息(地理位置/文件)
UniApp 集成腾讯云 IM 富媒体消息全攻略(地理位置/文件) 一、功能实现原理 腾讯云 IM 通过 消息扩展机制 支持富媒体类型,核心实现方式: 标准消息类型:直接使用 SDK 内置类型(文件、图片等)自…...
《Offer来了:Java面试核心知识点精讲》大纲
文章目录 一、《Offer来了:Java面试核心知识点精讲》的典型大纲框架Java基础并发编程JVM原理数据库与缓存分布式架构系统设计二、《Offer来了:Java面试核心知识点精讲(原理篇)》技术文章大纲核心主题:Java基础原理与面试高频考点Java虚拟机(JVM)原理Java并发编程原理Jav…...

【iOS】 Block再学习
iOS Block再学习 文章目录 iOS Block再学习前言Block的三种类型__ NSGlobalBlock____ NSMallocBlock____ NSStackBlock__小结 Block底层分析Block的结构捕获自由变量捕获全局(静态)变量捕获静态变量__block修饰符forwarding指针 Block的copy时机block作为函数返回值将block赋给…...