首页
学习
活动
专区
圈层
工具
发布

CPU 进入 IDLE 都做了啥?

cpuidle framework 每一个 CPU 核心都会有一个 idle 进程,idle 进程是当系统没有调度 CPU 资源的时候,会进入 idle 进程,而 idle 进程的作用就是不使用 CPU...在ARM64架构中,当CPU Idle时,会调用WFI指令(wait for interrupt),关掉CPU的Clock以便降低功耗,当有外设中断触发时,CPU又会恢复回来。...它决定了CPU在idle状态和run状态之间切换的效率,如果延迟过大,将会影响系统性能; unsigned int exit_latency; /* in US */ //CPU在该idle state...下面看下 CPU 进入 idle 状态的流程图: 可以看出,最终是通过 PSCI 来实现 CPU 的 suspend。...PSCI PSCI, Power State Coordination Interface,由ARM定义的电源管理接口规范,通常由Firmware来实现,而Linux系统可以通过smc/hvc指令来进入不同的

2.9K31
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    劫持Linux idle进程做点自己的计算任务

    其实,还有一个好办法,即劫持idle,这样我们甚至可以不用管CPU记账程序, idle多当然好啊,运维们不正期望idle多吗?...idle多没人会去perf的吧… 测试代码如下: #include linux/module.h> #include linux/kallsyms.h> #include linux/cpu.h>...其实,如果机器在机房,电源风扇的轰鸣是可以掩盖CPU风扇的,不过液冷的话就要另想办法了。 我们看下效果吧。我用虚拟机测试,下面左边是宿主机,右边是虚拟机,没有劫持idle时的CPU利用率如下: ?...虽然右边虚拟机的CPU依然几乎全部都是idle,和未劫持时没有差别,然而宿主机的能耗骗不了人。...#include linux/module.h> #include linux/kallsyms.h> #include linux/cpu.h> char *stub; char *addr

    1.4K20

    Linux查询CPU信息

    1.基本概念 物理CPU数 主板上实际插入的CPU数量,可以数不重复的physical id 有几个(physical id) CPU核数 单块CPU上面能处理数据的芯片组的数量,如双核、四核等...(CPU cores) 逻辑CPU数 一般情况下,逻辑CPU数=物理CPU个数每颗核数,如果不相等的话,则表示服务器的CPU支持超线程技术(简单来说,它可使处理器中的1颗内核如2颗内核那样在操作系统中发挥作用...这样一来,操作系统可使用的执行资源扩大了一倍,大幅提高了系统的整体性能,此时逻辑CPU=物理CPU个数每颗核数*2) 它们之间的关系 总核数 = 物理CPU个数 * 每颗物理CPU的核数 总逻辑...CPU数 = 物理CPU个数 * 每颗物理CPU的核数 * 超线程数 2.查看物理CPU的个数 $ cat /proc/cpuinfo |grep "physical id"|sort |uniq|wc...-l 2 3.查看逻辑CPU个数 $ cat /proc/cpuinfo |grep "processor"|wc -l 24 4.查看CPU核数 $ cat /proc/cpuinfo |grep

    13.9K10

    Linux如何查看CPU信息,Linux查看CPU个数和核心数,Linux查看CPU使用率和运行位数

    Linux如何查看CPU信息,Linux查看CPU个数和核心数,Linux查看CPU使用率和运行位数 2017年11月24日 11:52:17 tiiefu1212 阅读数 14584 一、Linux... : 6 cpu cores : 6 cpu cores : 6 cpu cores : 6 cpu cores : 6 cpu cores : 6 cpu cores : 6 cpu cores :...6 cpu cores : 6 cpu cores : 6 cpu cores : 6 cpu cores : 6 可以看到,12个逻辑CPU中,每个CPU都是6核。...其实在查看CPU基本信息里,有个cpu cores:6,直接就显示是6个。...time累积起来 s :安全模式,将交谈式指令取消,避免潜在的危机 i :不显示任何闲置(idle)或无用(zombie)的行程 n :更新的次数,完成后将会退出top b :批次档模式,搭配"n"参数一起使用

    66.3K31

    python IDLE 改变窗口背景颜色

    初学Python,想必大家拿来练习最多的IDE就是Python自带的IDLE了,但是默认的代码配色及语法高亮主题确实很不适应。 能不能把IDLE配置成像sublime_text那样的主题呢?...我列了一份可以找到它的路径清单 在Linux系列系统下路径为(~表示用户目录): ~/.idlerc/ 在Windows XP下路径为: C:\Documents and Settings\\...当然,说到编辑,命令控们也可以尝试下面的命令,在Linux系统下: # for Linux vi ~/.idlerc/config-highlight.cfg在Windows系统下: notepad %...等等,我们修改了config-highlight.cfg这个文件并不意味着事情结束了,我们还需要在Python IDLE中选择我们的主题,这时如果已经打开Python IDLE,请保存必要文件并重新开启...IDLE,开启后依次选择菜单上Options – Configure IDLE… 选择Highlighting选项卡,然后Select选择a Custom Theme,如下图所示,选择刚才配置的两个主题之一

    4.8K40

    ​Linux CPU 性能优化指南

    Linux 为每个 CPU 维护一个就绪队列,将 R 状态进程按照优先级和等待 CPU 时间排序,选择最需要的 CPU 进程执行。这里运行进程就涉及了进程上下文切换的时机: 进程时间片耗尽、。...Linux 通过/proc虚拟文件系统向用户控件提供系统内部状态信息,其中/proc/stat则是 CPU 和任务信息统计。...system(通常缩写为 sys),代表内核态 CPU 时间。 idle(通常缩写为 id),代表空闲时间。注意,它不包括等待 I/O 的时间(iowait)。...为进程设置资源限制:使用 Linux cgroups 来设置进程的 CPU 使用上限,可以防止由于某个应用自身的问题,而耗尽系统资源。...开启 irqbalance 服务或者配置 smp_affinity,就可以把中断处理过程自动负载均衡到多个 CPU 上。 参考 极客时间:Linux 性能优化实战 ?

    9.6K55
    领券