yydcool
V2EX  ›  问与答

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

  •  
  •   yydcool · Mar 15, 2016 · 14268 views
    This topic created in 3889 days ago, the information mentioned may be changed or developed.

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

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

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

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

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

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

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

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

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

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

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

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

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

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

    zingl
    zingl
    Mar 16, 2016
    19
    LZ 的推导槽点太多,不忍卒读
    deanguqiang
    deanguqiang
    Mar 16, 2016 via iPhone
    20
    @wohenyingyu01
    所以说理论上。
    实际电路会复杂的多,因为 cpu 可能会根据负载动态调节频率或者 clock gating 等,还有漏掉影响。
    msg7086
    msg7086
    Mar 16, 2016
    21
    满载还降频真是想不开
    mactaew
    mactaew
    Mar 16, 2016 via iPhone
    22
    感觉这个跟开车如何省油是一样的,高频率低负载,汽车就是高速率低转速
    Tink
    Tink
    Mar 16, 2016
    23
    槽点太多
    ffffwh
    ffffwh
    Mar 16, 2016 via Android
    24
    @sandideas
    re 这个
    wwthappy
    wwthappy
    Mar 16, 2016
    25
    单纯一个 mos 来说,p=vf^2,p 是功率,v 是电压,f 是频率. 但是鉴于 cpu 有很多 mos 管,计算量大的时候工作的多,计算量小的时候工作的少,所以不会满足这个公式.如果限定一下:计算量一样大,那就是满足这个公式的. 由于能耗还和 t 时间有关系,so 楼主自己算去吧
    eirk2004
    eirk2004
    Mar 16, 2016
    26
    测试表明,高频低负载要比低频高负载省电。
    可以把 CPU 干某件事脑补成一项 100 人运水的工作:高频高负载=100 人扛 100 桶水,高频低负载=100 人扛 50 桶水,低频高负载=50 人扛 50 桶水。
    而且频率和功耗的所谓线性关系,只能维持在某个频率内。降频主要是防止过热造成损害。
    wohenyingyu01
    wohenyingyu01
    Mar 16, 2016
    27
    @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
    deanguqiang
    Mar 17, 2016
    28
    @wohenyingyu01
    我没有测试过 CPU 的功耗,这里面有太多的不可控变量,比如 core 电压变化,静态电流也没有刨除,所以不好计算。
    对简单的数字电路我倒是测过,动态电流是跟频率严格线性的。
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Privacy   ·   Solana   ·   1201 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 60ms · UTC 00:30 · PVG 08:30 · LAX 16:30 · JFK 19:30
    ♥ Do have faith in what you're doing.