如果一个核心有两个硬件线程,那么在以下两种情况下,该核心消耗的电量是否相同:a) 只有一个线程处于繁忙状态,另一个处于空闲状态 b) 两个线程都处于繁忙状态
据我所知,现代处理器中的电压调节器是针对每个核心的,而不是针对每个硬件线程的,因此我的上述假设正确吗?
答案1
我们能得到的最好的答案是“视情况而定”。
有许多复杂的逻辑和电源门控,功耗在很大程度上取决于实际执行的任务,而不是有多少线程。如果一个线程包含使用所有 CPU 执行单元的多种多样的指令集,那么最终消耗的电量可能比两个争夺相同 CPU 资源的线程要多。
为了提高电源效率,CPU 中未使用的部分可以进入低能量状态的原因是指令调度器知道在一段时间内不太可能使用它。是否发生这种情况取决于处理器,需要仔细阅读处理器文档。
CPU 设计也在不断变化和改进,因此今天的情况明天可能会发生变化。