关闭 x
IT技术网
    技 采 号
    ITJS.cn - 技术改变世界
    • 实用工具
    • 菜鸟教程
    IT采购网 中国存储网 科技号 CIO智库

    IT技术网

    IT采购网
    • 首页
    • 行业资讯
    • 系统运维
      • 操作系统
        • Windows
        • Linux
        • Mac OS
      • 数据库
        • MySQL
        • Oracle
        • SQL Server
      • 网站建设
    • 人工智能
    • 半导体芯片
    • 笔记本电脑
    • 智能手机
    • 智能汽车
    • 编程语言
    IT技术网 - ITJS.CN
    首页 » HTML5 »CPU空闲时在”忙”什么

    CPU空闲时在”忙”什么

    2014-11-13 00:00:00 出处:冰糖葫芦
    分享

    CPU在绝大部分时间是什么都不干的。 大多数技术专家都知道这个事实,但对于 CPU 是如何从空闲状态切换到工作状态,忙完后又回到空闲状态的相应机制,我们还没有详细讨论过。 对现代处理器来说这种机制变得越来越重要; 今天大部分芯片设计的一个目标是将处理器尽快地切换到低功率状态。

    Gustavo Duarte 写的 一篇详细文章指出, CPU 空闲时(idle CPU)并不是什么都不干(doing nothing) —— 而是在运行空闲任务(idle tasks)。 CPU整体设计就是完成当前操作后尽可能快速地返回到空闲状态, 但系统必须要有某种方法/方式来唤醒芯片,让它去关注其他某些东西。 其中的一种方式是使用系统计时器(system timer)。

    [图片来源:Gustavo Duarte]

    如 Duarte 文中所述, 阻止CPU消耗太多电量的一种方法是内置更长的时钟周期(tick periods)。 通过这种方式,CPU在唤醒之前需要度过更长的空闲时间,然后执行基本任务,接着再次睡眠。

    什么是空闲任务(idle task)

    空闲任务可能听起来有点自相矛盾。 关键是你要理解CPU既然通电,那么就必须时刻不停地在运转, 即使他什么正事也不干。 在哲学上对应的词汇就是所谓的“忙等待”(busy waiting),本质是让 CPU 不停地去计算某个条件,看看是否为 true.

    对于运行在x86芯片上的Windows来说, 这个功能表现为暂停(HLT)指令,对应 Windows 的 System Idle Process 进程。 Windows只有在某个CPU核心没有合适的线程可执行时,才会调用 idle 空闲进程去运行。 假如你查看 Windows 系统的任务管理器, 你会看到 System Idle Process(系统空闲进程) 大多数时候都显示一个较高的CPU使用百分比。 和进程列表中的其他进程不同,空闲进程的值越高,代表CPU的工作量越小。 设计 HLT 指令的目的是为了尽可能地减少电量消耗,并使 CPU 进入节能模式/状态。

    HLT的历史

    HLT(暂停)指令其实有很长的历史 —— 在 第一颗8086处理器 上就已经实现了, 但早期操作系统并不支持它。 老程序员可能会记得,曾经有一段时间, 甚至连基本的 HLT 功能都总是不能按预期方式执行。 回首过去的超频年代, 那时候CPU有一个基本的工具(utility)叫做 Rain(雨), 用来实际地增加CPU的idle空闲时间(以及提升处理过程中的散热和能耗)。 随着时间的流逝,我们可以看到硬件制造厂商和软件开发者都变得越来越复杂。

    这是 Windows 8 创新的一个方面 —— 好吧,本质上只是尝试创新 —— 但却产生了一些奇怪的结果。 在默认情况下它允许在处理过程中有更长的间隔周期,但这也导致一些程序产生问题,如Google Chrome等程序为了更快地对用户操作进行响应,会自动将时钟频率(tick rate)设置为操作系统所允许的最小值。 这个BUG在新版程序中已经修复了, 但仍可能减少某些Windows 8电脑的电池续航时间。

    一颗 Intel 8086 CPU, 1978年。确实, 当时CPU是很简单的玩意儿 —— 大约只有2万个晶体管.

    这确实是一个可以调节时钟周期的地方, 加上要支持没有基于晶体定时器的系统,使微软措手不及。 在Windows8中,软件通过混合操作系统时间记录的方式来调整前端总线速度,就会导致错误的基准测试结果 。 这种行为在[Windows 10]中一直保持, 尽管它只是一个小众的问题 —— 在操作系统产生错误的结果你必须调整系统前端总线的时钟.

    原来的那篇博客主要讨论的是桌面操作系统,race-to-idle是现代CPU架构的关键组件。 AMD和英特尔每年都会发布新一代产品,还会经常推出更新,可能最高性能只提升那么一点点, 但通过更好的时钟门控(clock gating)却能显著提高能量使用率并更快地进行节能模式切换.

    上一篇返回首页 下一篇

    声明: 此文观点不代表本站立场;转载务必保留本文链接;版权疑问请联系我们。

    别人在看

    电脑屏幕不小心竖起来了?别慌,快捷键搞定

    Destoon 模板存放规则及语法参考

    Destoon系统常量与变量

    Destoon系统目录文件结构说明

    Destoon 系统安装指南

    Destoon会员公司主页模板风格添加方法

    Destoon 二次开发入门

    Microsoft 将于 2026 年 10 月终止对 Windows 11 SE 的支持

    Windows 11 存储感知如何设置?了解Windows 11 存储感知开启的好处

    Windows 11 24H2 更新灾难:系统升级了,SSD固态盘不见了...

    IT头条

    Synology 更新 ActiveProtect Manager 1.1 以增强企业网络弹性和合规性

    00:43

    新的 Rubrik Agent Cloud 加速了可信的企业 AI 代理部署

    00:34

    宇树科技 G1人形机器人,拉动一辆重达1.4吨的汽车

    00:21

    Cloudera 调查发现,96% 的企业已将 AI 集成到核心业务流程中,这表明 AI 已从竞争优势转变为强制性实践

    02:05

    投资者反对马斯克 1 万亿美元薪酬方案,要求重组特斯拉董事会

    01:18

    技术热点

    大型网站的 HTTPS 实践(三):基于协议和配置的优化

    ubuntu下右键菜单添加新建word、excel文档等快捷方式

    Sublime Text 简明教程

    用户定义SQL Server函数的描述

    怎么在windows 7开始菜单中添加下载选项?

    SQL Server 2016将有哪些功能改进?

      友情链接:
    • IT采购网
    • 科技号
    • 中国存储网
    • 存储网
    • 半导体联盟
    • 医疗软件网
    • 软件中国
    • ITbrand
    • 采购中国
    • CIO智库
    • 考研题库
    • 法务网
    • AI工具网
    • 电子芯片网
    • 安全库
    • 隐私保护
    • 版权申明
    • 联系我们
    IT技术网 版权所有 © 2020-2025,京ICP备14047533号-20,Power by OK设计网

    在上方输入关键词后,回车键 开始搜索。Esc键 取消该搜索窗口。