![在 Linux 中动态禁用 CPU 插槽以节省能源?](https://linux22.com/image/702592/%E5%9C%A8%20Linux%20%E4%B8%AD%E5%8A%A8%E6%80%81%E7%A6%81%E7%94%A8%20CPU%20%E6%8F%92%E6%A7%BD%E4%BB%A5%E8%8A%82%E7%9C%81%E8%83%BD%E6%BA%90%EF%BC%9F.png)
我有一台 4X Xeon X7560 Dell r810 服务器,即使在空闲时也会消耗大量能源(400 瓦)。当服务器空闲或负载较轻时,我不需要所有 4 个 CPU 都处于活动状态,因此我想知道是否可以通过禁用它们来节省能源。
我知道您可以使用 动态禁用逻辑核心(Linux 称之为“处理器”)echo 0 > /sys/devices/system/cpu/cpu[number]/online
,但如何在系统运行时禁用整个 CPU 插槽,以防止该 CPU 消耗能源?我还需要能够在不重新启动的情况下重新启用它们。我尝试禁用映射到插槽的所有 lcore,但没有看到空闲功耗有任何变化。
答案1
我怀疑禁用 Linux 中的内核sysfs
是否能节省任何电量,除非 CPU 支持现代 ARM CPU 所具有的功能。关闭一个或多个插槽时,您会遇到的第二个问题是,每个插槽都有专用的 RAM 部分,如果您关闭该插槽,这些 RAM 部分也将不可用。
节省能源的最佳且可能唯一的方法是安装和配置cpupower
任何其他可以降低 CPU 频率的工具。还可以在 BIOS 中检查此类功能。