V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX 提问指南
yydcool
V2EX  ›  问与答

理性思考 CPU 降频到底能不能省电?

  •  
  •   yydcool · 2016-03-15 21:53:38 +08:00 · 12647 次点击
    这是一个创建于 2966 天前的主题,其中的信息可能已经有所发展或是发生改变。

    假设降频前后 CPU 的总运算量相同,即需要执行同样的任务。

    降频前功率为 P ,频率为 F ,需要时间为 T ,所以消耗能量为 PT 。

    降频后频率为小于 F 的一个值,为 a * F , 0<a<1
    然而此时功率应该是要大于 b * P ,因为 CPU 有一些额外损耗 b 应该大于 a 。

    所以呢,消耗能量为 T/a * b * P > PT, 所以消耗能量应该是更多了

    28 条回复    2016-03-17 09:39:18 +08:00
    lhbc
        1
    lhbc  
       2016-03-15 22:25:49 +08:00 via Android
    《 4 句话让你明白睿频技术》……
    Devin
        2
    Devin  
       2016-03-15 22:26:19 +08:00 via iPhone
    一般说的降频应该是空闲时降频吧
    Bardon
        3
    Bardon  
       2016-03-15 23:05:19 +08:00
    差别在于空闲时那颗 U 运行在哪个频率,这里说的空闲并非指 CPU 负载 0%。

    举个例子,桌面版 CPU 负载在 20%时,可能就往上跳一个频率,低压版可能要到 30%或 40%才网上跳一次

    此时,两颗 U ,在某系统中同时维持在负载 25%时,功耗差别就来了。

    如果你 CPU 一直在 0%~1%之间转悠,那真没啥区别,额外的损耗可以忽略了。

    以上纯臆测
    Bardon
        4
    Bardon  
       2016-03-15 23:09:26 +08:00
    不对,针对楼主的提问
    如果相同的运算量的功耗,差别应该不大,问题很多人锁频,不在于功耗,在于一个时间段的机子发热...
    zmj1316
        5
    zmj1316  
       2016-03-15 23:10:15 +08:00
    我认为是省电的,虽然体验会差,理由是 CPU 最低频率是有一个限制的,只要没有休眠,频率至少会高于这个值,如果我将频率限制在这个最低值,那么虽然应用会运行更长时间,但是相当于把空闲时多余的算力用上了,耗电量一定是处于最低的。
    不知道这么理解对不对。
    seki
        6
    seki  
       2016-03-15 23:15:49 +08:00
    所以空闲时候才降频……
    Bardon
        7
    Bardon  
       2016-03-15 23:37:23 +08:00
    @zmj1316 我觉得楼主的意思是满功耗状态
    譬如 3.2G 下满负载 1 分钟
    锁到 1.6G 下满负载 2 分钟

    当年 linux 下笔记本上也玩过锁屏,当初主要的目的还是机子发热。
    sandideas
        8
    sandideas  
       2016-03-16 00:21:56 +08:00 via iPhone
    CPU 的功耗正比与电压的平方。
    honeycomb
        9
    honeycomb  
       2016-03-16 01:05:27 +08:00
    从仅考虑 CPU 部分的功耗的情况下,单位电能可以完成的运算量,(频率足够高时,大约 30% Fmax 或更低,也可能更高,随着处理器 /架构 /其它因素不同而不同)会随着频率升高而降低

    这是由 CMOS 电路的动态功耗(和电压平方呈正比)与漏电特性(电压的指数函数)决定的

    这个时候“因为 CPU 有一些额外损耗 b 应该大于 a ”是次要的问题

    http://www.anandtech.com/show/9330/exynos-7420-deep-dive/5
    tobyxdd
        10
    tobyxdd  
       2016-03-16 09:19:08 +08:00 via Android
    主要看发热
    DT27
        11
    DT27  
       2016-03-16 09:26:29 +08:00
    还要考虑频率高了不止 CPU 自己耗电高了,为了散热风扇耗电也高了。
    频率低了虽然耗时长了,但是风扇那部分电量也省了。
    yydcool
        12
    yydcool  
    OP
       2016-03-16 09:52:13 +08:00
    @DT27 我光考虑手机环境了,没想到散热的部分
    wohenyingyu01
        13
    wohenyingyu01  
       2016-03-16 09:59:55 +08:00
    频率和功耗有必然的联系么, 6700k 4ghz 的时候默认电压是 1.314v ,我超到 4.4 ,电压稳定到 1.280v ,此时功耗应该更小了吧。频率无所谓,电压才是关键。 P=UI🤔
    ming2281
        14
    ming2281  
       2016-03-16 10:05:52 +08:00

    但是降低体验(可能)

    省点的话,应该先干掉大头, CPU 不是大头
    deanguqiang
        15
    deanguqiang  
       2016-03-16 10:10:08 +08:00 via iPhone
    @wohenyingyu01 这么算是不对的。理论上数字电路的动态功耗跟频率成正比,因为频率越高单位时间内寄生电容的充放电次数就越多,电流也就越大。
    imn1
        16
    imn1  
       2016-03-16 10:28:07 +08:00
    省电概念不能忽略时间轴(单位时间内),否则能量守恒,区别只是有效功
    huijiewei
        17
    huijiewei  
       2016-03-16 10:31:32 +08:00
    前提是你能一直跑满载,但是桌面电脑可以吗?
    wohenyingyu01
        18
    wohenyingyu01  
       2016-03-16 11:37:39 +08:00
    @deanguqiang 我只是个文科生,没学过数字电路,不过网上测评来看频率和功耗并非线性关系:

    zingl
        19
    zingl  
       2016-03-16 11:38:54 +08:00
    LZ 的推导槽点太多,不忍卒读
    deanguqiang
        20
    deanguqiang  
       2016-03-16 12:26:51 +08:00 via iPhone
    @wohenyingyu01
    所以说理论上。
    实际电路会复杂的多,因为 cpu 可能会根据负载动态调节频率或者 clock gating 等,还有漏掉影响。
    msg7086
        21
    msg7086  
       2016-03-16 12:36:36 +08:00
    满载还降频真是想不开
    mactaew
        22
    mactaew  
       2016-03-16 13:03:50 +08:00 via iPhone
    感觉这个跟开车如何省油是一样的,高频率低负载,汽车就是高速率低转速
    Tink
        23
    Tink  
       2016-03-16 13:05:22 +08:00
    槽点太多
    ffffwh
        24
    ffffwh  
       2016-03-16 13:08:39 +08:00 via Android
    @sandideas
    re 这个
    wwthappy
        25
    wwthappy  
       2016-03-16 13:38:16 +08:00
    单纯一个 mos 来说,p=vf^2,p 是功率,v 是电压,f 是频率. 但是鉴于 cpu 有很多 mos 管,计算量大的时候工作的多,计算量小的时候工作的少,所以不会满足这个公式.如果限定一下:计算量一样大,那就是满足这个公式的. 由于能耗还和 t 时间有关系,so 楼主自己算去吧
    eirk2004
        26
    eirk2004  
       2016-03-16 16:15:30 +08:00
    测试表明,高频低负载要比低频高负载省电。
    可以把 CPU 干某件事脑补成一项 100 人运水的工作:高频高负载=100 人扛 100 桶水,高频低负载=100 人扛 50 桶水,低频高负载=50 人扛 50 桶水。
    而且频率和功耗的所谓线性关系,只能维持在某个频率内。降频主要是防止过热造成损害。
    wohenyingyu01
        27
    wohenyingyu01  
       2016-03-16 21:42:18 +08:00
    @deanguqiang 本着文科生对理科的求知欲,下班做了个对比试验,但是由于 core voltage 的决定条件太多了,无法做到控制变量。还好我用的是纯数字电源,用驱动可顺利读出精确到 0.1w 的功耗:

    在 4.4ghz 时,闲置电源输出功率约为 88.3w ,满载时输出功率为 151.8w ,输入功率为 169.6w ,电源损耗功率为 17.8w ,此时核心电压为 1.328v :


    在 4.0ghz 时,闲置电源输出功率为 87.1w ,满载输出功率为 134.2w ,输入功率为 151.5w ,电源损耗功率为 17.3w ,此时核心电压为 1.232v :


    这个 cpu 理论上的 tdp 为 90w ,超频 10%满载功耗相差 17.6w ,即提高了约 20%。
    deanguqiang
        28
    deanguqiang  
       2016-03-17 09:39:18 +08:00
    @wohenyingyu01
    我没有测试过 CPU 的功耗,这里面有太多的不可控变量,比如 core 电压变化,静态电流也没有刨除,所以不好计算。
    对简单的数字电路我倒是测过,动态电流是跟频率严格线性的。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   2852 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 28ms · UTC 15:07 · PVG 23:07 · LAX 08:07 · JFK 11:07
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.