如何有效减少 AI 模型的数据中心能源消耗?

news2024/11/15 8:26:35

在让人工智能变得更好的竞赛中,麻省理工学院(MIT)林肯实验室正在开发降低功耗、高效训练和透明能源使用的方法。

在 Google 上搜索航班时,您可能已经注意到,现在每个航班的碳排放量估算值都显示在其成本旁边。这是一种告知客户其对环境影响的方式,并让他们将这些信息纳入决策中。

尽管计算机行业的碳排放量超过了整个航空业的碳排放量,但这种透明度尚不存在。这种能源需求不断升级的是人工智能模型。像ChatGPT这样巨大的流行模型预示着大规模人工智能的趋势,预测到2030年,数据中心将消耗全球21%的电力供应。

麻省理工学院(MIT)林肯实验室超级计算中心(LLSC)正在开发技术,以帮助数据中心控制能源使用。他们的技术范围从简单但有效的更改,如调整硬件的功率上限,到采用可以在早期停止人工智能训练的新工具。至关重要的是,他们发现这些技术对模型性能的影响最小。

从更广泛的角度来看,他们的工作是动员绿色计算研究并促进透明文化。“能源感知计算并不是一个真正的研究领域,因为每个人都在保留他们的数据,”领导能源感知研究工作的LLSC高级职员Vijay Gadepally说。“必须有人开始,我们希望其他人也能效仿。

抑制功率和冷却

与许多数据中心一样,LLSC 在其硬件上运行的 AI 作业数量显著增加。注意到能源使用量的增加,LLSC的计算机科学家对更有效地运行作业的方法感到好奇。绿色计算是该中心的一项原则,该中心完全由无碳能源提供动力。

训练 AI 模型(从庞大数据集中学习模式的过程)需要使用图形处理单元 (GPU),这些硬件是耗电的硬件。例如,训练 GPT-3(ChatGPT 的前身)的 GPU 估计消耗了 1,300 兆瓦时的电力,大致相当于1,450 个美国普通家庭一个月使用的电力。

虽然大多数人寻求 GPU 是因为其计算能力,但制造商提供了限制 GPU 允许消耗的功率的方法。“我们研究了封顶功率的影响,发现我们可以将能耗降低约12%至15%,具体取决于模型,”LLSC的研究员Siddharth Samsi说。

限制功率的影响是增加任务时间——GPU 完成任务所需的时间将延长约 3%,Gadepally 表示,考虑到模型通常需要几天甚至几个月的训练,这种增加“几乎不明显”。在他们的一项实验中,他们训练了流行的 BERT 语言模型,将 GPU 功率限制在 150 瓦,训练时间增加了两个小时(从 80 小时增加到 82 小时),但节省了相当于一个美国家庭一周的能源。

然后,该团队构建了软件,将这种功率封顶功能插入到广泛使用的调度器系统 Slurm 中。该软件允许数据中心所有者在其系统中或逐个作业设置限制。

“我们今天就可以部署这种干预措施,我们已经在所有系统中这样做了,”Gadepally说。

附带的好处也出现了,自从实施功率限制以来,LLSC 超级计算机上的 GPU 一直在以更稳定的温度运行 30 华氏度左右,从而减少了冷却系统的压力。运行硬件冷却器还可以提高可靠性和使用寿命。他们现在可以考虑推迟购买新硬件——减少中心的“隐含碳”,即通过制造设备产生的排放——直到使用新硬件所获得的效率抵消了这方面的碳足迹。他们还在寻找减少冷却需求的方法,通过战略性地将作业安排在夜间和冬季运行。

Gadepally说:“数据中心今天可以使用这些易于实施的方法来提高效率,而无需修改代码或基础设施。

全面了解数据中心的运营以寻找削减成本的机会可能会耗费大量时间。为了让其他人更容易完成这一过程,该团队与Northeastern大学的Devesh Tiwari教授和Baolin Li合作,最近开发并发布了一个用于分析高性能计算系统碳足迹的综合框架。系统从业者可以使用此分析框架来更好地了解其当前系统的可持续性,并考虑对下一代系统进行更改。

调整模型的训练和使用方式

除了对数据中心运营进行调整外,该团队还在设计提高 AI 模型开发效率的方法。

在训练模型时,AI 开发人员通常专注于提高准确性,并以以前的模型为基础进行构建。为了实现所需的输出,他们必须弄清楚要使用哪些参数,而要做到这一点可能需要测试数千种配置。这个过程被称为超参数优化,是LLSC研究人员发现的减少能源浪费的成熟领域。

“我们开发了一个模型,基本上着眼于给定配置的学习速度,”Gadepally说。鉴于这个比率,他们的模型预测了可能的表现。表现不佳的模型会提前停止。“我们可以在早期给你一个非常准确的估计,最好的模型将在100个模型中的前10个模型中,”他说。

在他们的研究中,这种提前停止导致了巨大的节省:用于模型训练的能源减少了80%。他们将这种技术应用于为计算机视觉、自然语言处理和材料设计应用程序开发的模型。

“在我看来,这种技术在推进人工智能模型训练方式方面具有最大的潜力,”Gadepally说。

训练只是 AI 模型排放的一部分。随着时间的推移,排放的最大贡献者是模型推理,或实时运行模型的过程,例如用户与 ChatGPT 聊天时。为了快速响应,这些模型使用冗余硬件,一直运行,等待用户提出问题。

提高推理效率的一种方法是使用最合适的硬件。此外,该团队还与Northeastern大学合作,创建了一个优化器,将模型与碳效率最高的硬件组合相匹配,例如用于推理计算密集型部分的高功率GPU和用于要求较低的方面的低功耗中央处理器(CPU)。这项工作最近在国际ACM高性能并行和分布式计算研讨会上获得了最佳论文奖。

使用此优化器可以减少 10-20% 的能源使用,同时仍能满足相同的“服务质量目标”(模型的响应速度)。

此工具对云客户特别有用,这些客户从数据中心租用系统,并且必须从数千个选项中选择硬件。“大多数客户高估了他们的需求;他们之所以选择功能过强的硬件,只是因为他们不知道更好,“Gadepally 说。

绿色计算意识的增强

实施这些干预措施所节省的能源也降低了开发人工智能的相关成本,通常以一比一的比例降低。事实上,成本通常被用作能源消耗的代名词。既然节省了这些成本,为什么不让更多的数据中心投资于绿色技术呢?

“我认为这有点激励失调的问题,”萨姆西说。“在构建更大更好的模型方面,有如此激烈的竞争,几乎所有次要考虑因素都被搁置一旁。

他们指出,虽然一些数据中心购买了可再生能源信用额度,但这些可再生能源不足以满足不断增长的能源需求。为数据中心供电的大部分电力来自化石燃料,而用于冷却的水正在导致流域压力。

他们还承认,如果没有能够向人工智能开发人员展示其消费的工具,就很难实现透明度。他们希望能够向每个LLSC用户展示每项工作,他们消耗了多少能源,以及该能源量与其他能源量的比较情况,类似于家庭能源报告。

这项工作的一部分需要与硬件制造商更紧密地合作,以便更容易、更准确地从硬件中获取这些数据。如果制造商能够标准化数据的读取方式,那么节能和报告工具就可以应用于不同的硬件平台。LLSC 研究人员和英特尔之间正在开展合作,以解决这一问题。

即使对于意识到人工智能强烈能源需求的人工智能开发人员来说,他们也无法独自做太多事情来遏制这种能源使用。LLSC团队希望帮助其他数据中心应用这些干预措施,并为用户提供能源感知选项。他们的第一个合作伙伴关系是与美国空军合作,美国空军是这项研究的赞助商,该研究运营着数千个数据中心,应用这些技术可以显着降低其能耗和成本。 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1248854.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

在Linux服务器部署爬虫程序?大佬只需七步!

之前在某乎上看见一篇关于《为什么很多程序员都建议使用 Linux》的文章,结合我自身关于Linux的使用经验。心血来潮得写了一段关于我在Linux系统部署爬虫程序的心得,希望结识更多的爬虫技术大佬,一起游弋在代码世界中。 根据我多年在Linux上部…

机器学习-激活函数的直观理解

机器学习-激活函数的直观理解 在机器学习中,激活函数(Activation Function)是用于引入非线性特性的一种函数,它在神经网络的每个神经元上被应用。 如果不使用任何的激活函数,那么神经元的响应就是wxb,相当…

数据结构-树-二叉树-堆的实现

1.树概念及结构 树是一种 非线性 的数据结构,它是由 n ( n>0 )个有限结点组成一个具有层次关系的集合。 把它叫做树是因 为它看起来像一棵倒挂的树,也就是说它是根朝上,而叶朝下的 。 有一个特殊的结点&#xff…

5.1 Windows驱动开发:判断驱动加载状态

在驱动开发中我们有时需要得到驱动自身是否被加载成功的状态,这个功能看似没啥用实际上在某些特殊场景中还是需要的,如下代码实现了判断当前驱动是否加载成功,如果加载成功, 则输出该驱动的详细路径信息。 该功能实现的核心函数是NtQuerySys…

【matlab版本的ggplot2】

gramm (complete data visualization toolbox, ggplot2/R-like) 来源:Morel, Pierre. “Gramm: Grammar of Graphics Plotting in Matlab.” The Journal of Open Source Software, vol. 3, no. 23, The Open Journal, Mar. 2018, p. 568, doi:10.21105/joss.00568…

五种多目标优化算法(NSDBO、NSGA3、MOGWO、NSWOA、MOPSO)求解微电网多目标优化调度(MATLAB代码)

一、多目标优化算法简介 (1)非支配排序的蜣螂优化算法NSDBO 多目标应用:基于非支配排序的蜣螂优化算法NSDBO求解微电网多目标优化调度(MATLAB)-CSDN博客 (2)NSGA3 NSGA-III求解微电网多目标…

医院预约管理系统开发 代码展示 九价疫苗接种预约功能(含小程序源代码)

基于微信小程序的疫苗预约系统让疫苗信息,疫苗预约信息等相关信息集中在后台让管理员管理,让用户在小程序端预约疫苗,查看疫苗预约信息,该系统让信息管理变得高效,也让用户预约疫苗,查看疫苗预约等信息变得…

力扣刷题篇之排序算法

系列文章目录 前言 本系列是个人力扣刷题汇总,本文是排序算法。刷题顺序按照[力扣刷题攻略] Re:从零开始的力扣刷题生活 - 力扣(LeetCode) 这个之前写的左神的课程笔记里也有: 左程云算法与数据结构代码汇总之排序&am…

网络安全工程师就业前景怎么样?

网络安全工程师的就业前景整体来看是不错的,近些年的岗位需求总体呈现上升的趋势,可以说只要有互联网的存在,就会有网络安全工程师的一席之地。不过现在企业更缺乏资深技术人才,如果只学会了皮毛,可能不会很好就业。 网…

推荐几款优秀的Chrome插件,值得收藏!

文章目录 1、Tampermonkey2、WeTab3、Chrono下载管理器4、AdBlock5、Cookie-Editor 1、Tampermonkey 使用用户脚本自由地改变网络,提升您的浏览体验,使用篡改猴!🌐🚀 篡改猴是一款功能强大的浏览器扩展功能&#xff0c…

python与C++与TensorRT的绑定

绑定的起因 Jetpack中的TensorRT不能直接在python3.8环境中使用,所以我们需要对TensorRT利用pybind11对python相进性绑定。 绑定的官方链接如下:点击这里 这个是8.2版本的,你可以使用其他版本也是可以的。 整个过程可以在虚拟环境中完成,主要是想最后的whl文件 在Jetson…

【快速解决】使用IDEA快速搭建SpringBoot项目(超详细)

前言 Spring Boot是Spring Framework的一款脚手架式框架,可以帮助开发者快速构建基于Spring的企业级应用程序。本篇博客将介绍如何使用IntelliJ IDEA(以下简称IDEA)来快速搭建一个Spring Boot项目。 目录 ​编辑 前言 使用IDEA快速搭建Spri…

react的开发中关于图片的知识

React是一个流行的JavaScript库,用于构建用户界面。在React开发中,图片是一个非常重要的元素,可以用于美化界面和展示内容。本篇博客将详细讲解React中关于图片的知识。 1. React中使用图片 在React中使用图片非常简单,只需要使…

链表经典面试题

1 回文链表 1.1 判断方法 第一种(笔试): 链表从中间分开,把后半部分的节点放到栈中从链表的头结点开始,依次和弹出的节点比较 第二种(面试): 反转链表的后半部分,中间节…

用户隐私与游戏体验如何平衡?第二周 Web3 开发者集结精华回顾

由 TinTinLand 联合 Dataverse 、Web3Go 、Subquery 、Cregis 、Litentry、Aspecta、SpaceID、ANOME、VARA&Gear、Moonbeam、Mantle、Obelisk 等 10 余家 Web3 项目共同举办的 Web3 开发者赢积分活动已举办至第三周。精彩线上主题活动分享、近距离交流体验互动,…

PostgreSQL Patroni 3.0 新功能规划 2023年 纽约PG 大会 (音译)

开头还是介绍一下群,如果感兴趣PolarDB ,MongoDB ,MySQL ,PostgreSQL ,Redis, Oceanbase, Sql Server等有问题,有需求都可以加群群内有各大数据库行业大咖,CTO,可以解决你的问题。加群请联系 liuaustin3 ,(…

AlDente Pro v1.22.2(mac电池最大充电限制工具)

AlDente Pro是一款适用于Mac操作系统的小工具,可以帮助您限制电池充电量以延长电池寿命。通常情况下,电池在充满的状态下会继续接受电源充电,这可能会导致电池寿命缩短。使用AlDente Pro,您可以设置电池只充到特定的充电水平&…

TYPE-C、PD原理

一、Type-C简介以及历史 自1998年以来,USB发布至今,USB已经走过20个年头有余了。在这20年间,USB-IF组织发布N种接口状态,包括A口、B口、MINI-A、MINI-B、Micro-A、Micro-B等等接口形态,由于各家产品的喜好不同&#x…

Azkaban极简使用文档

登录 地址: http://服务器ip:8081/, 用户名密码默认都是azkaban 构建项目流程 添加Project 编写工作流文件 在本机新建文件夹如test, 创建一个flow20.project 文件, 内容 azkaban-flow-version: 2.0(固定步骤)编写flow文件, 例如一个最基础的实例 test1.flow nodes:- name…

C语言剔除相关数(ZZULIOJ1204:剔除相关数)

题目描述 一个数与另一个数如果含有相同数字和个数的字符&#xff0c;则称两数相关。现有一堆乱七八糟的整数&#xff0c;里面可能充满了彼此相关的数&#xff0c;请你用一下手段&#xff0c;自动地将其剔除。 输入&#xff1a;多实例测试。每组数据包含一个n(n<1000)&#…