IEEE Spectrum 为技术内行人士准备

数据中心可以通过一个代码调整来大幅降低能耗 分享

为技术内行人士准备

主题

航空航天 AI 生物医学 气候技术 计算 消费电子 能源 技术史 机器人 半导体 电信 交通运输

板块

特写 新闻 观点 职业 DIY 工程资源

更多

新闻简报 特别报道 合集 说明 顶级编程语言 机器人指南 ↗ IEEE 工作网站 ↗

供 IEEE 会员

当前刊 杂志存档 研究所 研究所存档

IEEE Spectrum

关于我们 联系我们 转载与权限 ↗ [广告 ↗](https://spectrum.ieee.org/<https:/advertise.ieee.org/ >)

关注 IEEE Spectrum

支持 IEEE Spectrum

IEEE Spectrum 是 IEEE 的旗舰出版物,IEEE 是世界上最大的致力于工程和应用科学的专业组织。我们的文章、播客和信息图让读者了解技术、工程和科学的进展。 加入 IEEE 订阅 关于 IEEE联系与支持无障碍非歧视政策条款IEEE 隐私政策Cookie 偏好

© Copyright 2025 IEEE — 保留所有权利。IEEE 是一个公共慈善机构,是世界上最大的技术专业组织,致力于为人类福祉推进技术发展。

计算新闻

数据中心可以通过一个代码调整来大幅降低能耗

修改30行 Linux 代码,或可减少高达30%的能耗 Rina Diane Caballar 2025年3月17日 阅读需3分钟 1 Rina Diane Caballar 是一位特约编辑,报道科技及其与科学、社会和环境的交叉领域。 一位面带微笑的中年男子,留着灰短发,戴着眼镜。 滑铁卢大学计算机科学教授 Martin Karsten 和他的合作者修复了一个效率低下的问题,可以节省高达 30% 的数据中心能源使用 Joe Petrik/滑铁卢大学 linux 网络 操作系统 开源 数据中心 世界上大部分的网络流量都通过数据中心进行路由,数据中心也为耗电的人工智能 (AI)应用提供动力。仅在美国,数据中心在 2023 年消耗了该国总电力的约 4%,预计到 2028 年这一数字将上升至 12%。

一些研究人员正在进行宏伟的思考,制定创新的方案来使数据中心更具可持续性。另一些人,比如Martin Karsten,他是滑铁卢大学(位于加拿大)的系统和网络教授,正在以极小的方式改进当前的方法,以减少数据中心能源消耗。

Karsten 和他的前硕士生 Peter Cai 发现了 Linux 操作系统 (OS) 在内核级别处理网络流量时的低效率:Linux 内核是操作系统的“种子”或核心,管理硬件和进程之间的通信和内存等资源。

数据中心的案例中,这些进程需要弄清楚将通过网络传输的称为“数据包”的信息片段发送到哪里。当网络接收到一个新的数据包时,它会触发一个中断请求。内核将此请求发送到 CPU,然后 CPU 暂停其当前任务以处理该数据包。

操作系统还会定期轮询网络,以在中断请求触发之前检查是否有传入的数据包。这种繁忙轮询机制以 CPU 功耗为代价,最大限度地减少了网络流量处理的延迟。特别是在低流量情况下,即使没有数据包需要处理,轮询也会继续进行,从而导致不必要的能源消耗。

Karsten 决定优化这种方法。他说:“我们不是总是等待固定的时间段,而是根据我们所知的应用程序中的情况动态地等待。”他设计了一种技术,使得繁忙轮询发生在网络流量高峰期,并暂停不必要的中断请求。当网络流量减少时,基于中断的传送会恢复。“这使得最终的机制更加高效和灵活,”他补充道。

优化 Linux 以实现 能源效率

为了将理论付诸实践,Karsten 与 云计算服务提供商 Fastly 的杰出工程师兼 Linux 内核的频繁贡献者 Joe Damato 合作,开发了这些更改。事实证明,他们不需要编写任何新代码。

Damato 说:“这实际上只是重新组织数据流和数据处理的方式。我们 piggyback 在 Linux 内核中的现有代码上,并更改事物的运行顺序。”

这种改变导致大约 30 行代码的重新编写。他们在不同的场景和工作负载下测试了其修改的功能和性能,发现内核的改进可以将功耗降低高达 30%。

这种节能是有条件的。“这有点像最佳情况,因为 30% 适用于网络堆栈或通信部分,”Karsten 解释说。“如果一个应用程序主要做的是这个,那么它将看到 30% 的改进。如果应用程序做了很多其他事情,只是偶尔使用网络,那么 30% 将缩小到一个较小的值。”

修改后的代码尤其有利于网络主导型应用程序,如流量水平在一天中波动的​​数据中心,因为这种改变是自动的,并且是基于网络流量负载的动态改变。如此小的代码片段也可能产生巨大的连锁反应,一些报告指出,Linux 被绝大多数数据中心提供商网站广泛使用。

Linux 内核更新上线

代码 已作为 1 月份 Linux 内核发布版本 6.13 的一部分实施。Karsten 和 Cai 还在 ACM 计算系统测量与分析汇刊 上发表了一篇相关的 论文,并在 ACM SIGMETRICS 2024 会议上展示了该论文。

Damato 希望在今年即将举行的 Linux 内核网络会议上宣传他们的工作。他还计划在 Fastly 的 H2O 服务器 中添加对类似机制的支持。

并且由于 Linux 是 开源 的,Damato 希望其他人会效仿他们的榜样。“无论你使用 nginx 还是 Apache 还是任何你的 Web 服务器,你都能够使用我们发布的一些代码来帮助启发和指导你如何为你的 Web 服务器实现相同的功能。”

对于 Karsten 来说,这项工作促使他将 可持续性软件效率 作为他的下一个研究议程。

“当我 90 年代在计算机科学领域成长时,每个人都关心效率。因为计算机很小,只有少量的内存。它们很慢,所以你必须担心每个周期和每个字节,”他说。“不知何故,在过去的 20 年里,这一点已经丢失了。每个人都完全热衷于性能,而忽略了效率或资源消耗。我认为现在是时候转向了,我们可以找到方法使事情更有效率。”