Jef*_*ood 44 central-processing-unit electrical-power
我在非高峰时段对我们的(实时)数据库服务器进行了一些简单的手动基准测试,我注意到查询返回的基准测试结果有些不稳定。
不久前,我在我们所有的服务器上启用了“平衡”节能计划,因为我认为它们远未达到高利用率,这样我们可以节省一些能源。
我原以为这不会对性能产生显着的、可衡量的影响。然而,如果节省CPU功耗的特点是影响典型表现-尤其是共享的数据库服务器上-然后我不知道这是值得的!
我有点惊讶我们的网络层,即使在 35-40% 的负载下,也会从 2.8 Ghz @ 1.25V 降频到 2.0 Ghz @ 1.15V。
我完全期望降频可以节省电力,但对我来说,负载水平似乎足够高,它应该加速到全时钟速度。
我们的8-CPU的数据库服务器有一吨的流量,但非常低CPU使用率(只是由于我们的SQL查询的性质-他们很多,但真正简单的查询)。它通常位于 10% 或更少。所以我希望它比上面的屏幕截图降频更多。无论如何,当我将电源管理转为“高性能”时,我看到我的简单 SQL 查询基准提高了大约 20%,并且从运行到运行变得非常一致。
我想我认为轻负载服务器上的电源管理是双赢的——没有性能损失,并且显着节能,因为在大多数服务器中,CPU 通常是 #1 或 #2 的电源消耗者。情况似乎并非如此。在启用 CPU 电源管理的情况下,您将放弃一些性能,除非您的服务器始终处于如此大的负载下,以至于电源管理已有效地自行关闭。这个结果让我很惊讶。
有没有人有任何其他关于服务器 CPU 电源管理的经验或建议可以分享?它是您在服务器上打开或关闭的东西吗?您是否测量过您节省了多少电量?你有没有对它进行基准测试?
pjz*_*pjz 16
我不确定服务器,但目前嵌入式设备的想法是不要在低功耗和完全耗尽之间进行步骤,因为所涉及的额外时间会消耗你的节电,所以基本上它们运行低功耗,直到它们得到任何实际数量的 CPU 负载,此时它们会翻转到可能的最快速度,这样它们就可以完成工作并以低功耗重新进入空闲状态。
Dav*_*ger 11
我总是关闭服务器上的任何类型的电源管理。我很好奇其他人的经历,但我总是假设如果服务器时钟不足,总是会有一些延迟将 CPU '加速'到 100%,并且在数据中心设置这样的任何延迟是不可接受的。
您提供的数据似乎支持这一假设。所以,我没有做任何具体的测试,但似乎你不应该在 Windows 或 BIOS 中使用任何节能技术。我什至关闭了“关闭网络”和 PCI 卡设置以使其非常保守。
这实际上会为您节省多少电量:
如果您确实认为此功能可能会使您的服务器的稳定性处于危险之中(我有这方面的经验),那么您可能会寻找其他地方以节省能源。
我会尝试找出这可以为您拥有的服务器数量节省多少能源(尽管您可能已经这样做了)。由于您在答案中发布的图表是百分比,因此对于您的公司而言,节省的实际电量实际上可能很少。如果你没有很多服务器,它实际上可能没有那么多,在你的办公室安装运动激活灯或类似的东西可能会节省更多的能源(即使那不是那么有市场)。
我记得几年前读到关于美国主要汽车公司之一(忘记是哪家)有压力改变汽车尾气排放。相反,该公司表明,如果它限制了一些工厂,对他们来说会便宜得多,并且会节省更多的排放量。
不要忘记磁盘:
此外,如果不使用这些节能功能,您可能需要检查这些节能功能是否不会降低磁盘的转速。也许有一段时间所有的 SQL 查询结果都在 RAM 中,磁盘将被使用并进入睡眠状态(但不确定它是否像那样工作)?如果发生这种情况,当一切都再次启动时,将会有很大的性能损失。
在启用 CPU 电源管理的情况下,您将放弃一些性能,除非您的服务器始终处于如此大的负载下,以至于电源管理已有效地自行关闭。这个结果让我很惊讶。
前言:我正在对 Intel Xeons 及其使用 SpeedStep 的节能性能进行一些飞跃/概括。在阅读有关英特尔至强“ Yorkfield ”45nm CPU 的信息时,增强型英特尔 SpeedStep 技术 (EIST) 和增强型暂停状态 (C1E) 似乎是造成这种情况的真正罪魁祸首。我同意你的说法,相信打开这样的电源管理功能将有助于节约能源,但是当 CPU 在负载下需要能量时,系统会恢复到正常的电压时钟速度设置。似乎 EIST 和 C1E 有一些副作用,当在 BIOS 中使用任一个/或选项时,这些副作用并不是直观暗示的。翻遍了无数超频网站,看来BIOS中的这两个设置让人颇为无奈。
来自http://www.overclock.net/intel-cpus/376099-speedstep-guide-why-does-my-processor.html:
C1E(增强暂停状态):C1E 是两个组件中较简单的一个。它可以在 BIOS 中启用或禁用,并且独立于操作系统执行。C1E 有两种配置 - 空闲和负载。当 CPU 使用率相对较低时,此功能会将处理器的乘数降低到最低设置(通常为 6 倍)并稍微降低其 vCore。在 CPU 密集型应用程序期间,它会将倍数提高到其最大值,并将在 vCore 中提供小幅提升以进行补偿。在我们的示例中,C1E 将使您的处理器以 6 倍或 9 倍的 FSB 运行。
EIST(增强型英特尔 SpeedStep 技术):这是一项非常强大的功能,具有多种节能功能。与其更简单的表亲一样,EIST 可以影响 CPU 的电压和倍增器 - 但是,它具有更多级别的配置。SpeedStep 可以利用所有可用的乘法器,而不是简单的“慢速或快速”设置。在我们的示例案例中,EIST 将允许您的处理器以6、7、8 或 9 的倍数运行,并根据您的 CPU 需求量选择使用哪一个。EIST 由 Windows 控制,并利用您可能在控制面板中看到的不同“电源方案”。
虽然调整你的性能设置“高性能”可能是一个数据库服务器的最佳设置,我相当肯定要么EIST和/或C1E导致CPU来下,即使执行虽然他们应该已经回到正常的设置,当负载大幅增加。对我来说最大的警告似乎是“什么是实质性负载?” 根据 overclockers.net 网站,他们声称 EIST 使用这些“电源方案”设置来控制您的 CPU 设置。但是没有指示负载百分比或知道何时将 CPU 恢复到正常电压的时间。
同样,我绝不是英特尔 CPU 主题方面的专家,但我敢打赌,调整这两个设置可能会让您获得所需的节能效果和应该获得的性能,但要坚持“最大性能”设置无需重启也同样有效。
快速回答是:当然省电会影响性能。
更长的答案并不有趣。基本上,尝试一个设置,测试性能,然后决定你可以忍受什么。
应用程序和系统非常复杂,除了“是的,反应时间和其他系统速度会受到影响”之外,这里没有简单的答案。如果它比硬盘驱动器或网络慢得多——好吧,你明白了。实际测试。