AI能耗管理配置:从采集到策略的落地步骤

AI能耗管理配置的核心目标是让服务器上运行的AI任务(训练或推理)的功耗变得可观测、可控制。
如果你手头有一台或多台带GPU的Linux服务器,希望知道每个任务耗了多少电、在什么时间功耗偏高、如何在不影响业务的前提下降低整体能耗,可以按下面的步骤操作。
本文以常见的Ubuntu 22.04 + NVIDIA GPU环境为例,工具链选择开源的Prometheus + Node Exporter + NVIDIA DCGM Exporter,适合零基础用户跟随操作。

先确认硬件与系统是否具备采集条件

能耗管理的第一步不是装软件,而是确认服务器能否读到功耗数据。
大多数服务器电源和GPU都提供功耗传感器,但需要对应驱动和工具支持。

  • 检查GPU是否可被系统识别:运行 nvidia-smi -q -d POWER,如果能看到 Power Draw 数值,说明GPU功耗可读。
  • 检查CPU与整机功耗:运行 sudo apt install lm-sensors -y && sudo sensors-detect,按提示回答默认选项,然后运行 sensors,查看是否有 Package 或 power 相关读数。
  • 检查网络与权限:后续采集组件需要通过HTTP端口暴露指标,确保防火墙允许本机或监控服务器访问对应端口,例如 9100(Node Exporter)和 9400(DCGM Exporter)。

如果 nvidia-smi 没有输出功耗,先升级驱动或确认GPU型号是否支持功耗上报;
如果 sensors 没有读数,可能是主板传感器未加载,可尝试更新内核或使用IPMI工具 ipmitool 读取整机功耗。

安装并配置能耗采集组件

采集层负责把功耗数据变成Prometheus能抓取的指标。
下面分别配置整机与GPU两部分。

部署Node Exporter采集整机指标

Node Exporter负责暴露CPU、内存、磁盘等基础指标,配合 lm-sensors 可以间接反映整机功耗趋势。

wget https://github.com/prometheus/node_exporter/releases/download/v1.8.0/node_exporter-1.8.0.linux-amd64.tar.gz
tar xzf node_exporter-1.8.0.linux-amd64.tar.gz
sudo mv node_exporter-1.8.0.linux-amd64/node_exporter /usr/local/bin/
sudo useradd --no-create-home --shell /bin/false node_exporter
sudo chown node_exporter:node_exporter /usr/local/bin/node_exporter

创建systemd服务文件 /etc/systemd/system/node_exporter.service,内容如下:

[Unit]
Description=Node Exporter
After=network.target

[Service]
User=node_exporter
ExecStart=/usr/local/bin/node_exporter
Restart=on-failure

[Install]
WantedBy=multi-user.target

启动并设置开机自启:

sudo systemctl daemon-reload
sudo systemctl enable --now node_exporter
curl http://localhost:9100/metrics | head

如果返回以 # HELP 开头的指标列表,说明整机采集已生效。

部署NVIDIA DCGM Exporter采集GPU功耗

DCGM Exporter是NVIDIA官方提供的GPU指标导出工具,支持功耗、温度、利用率等字段。
使用Docker方式部署最简单:

docker run -d --gpus all --rm -p 9400:9400 \
  -v /run/prometheus:/run/prometheus \
  nvcr.io/nvidia/k8s/dcgm-exporter:3.3.5-3.1.5-ubuntu22.04

运行后执行 curl http://localhost:9400/metrics | grep DCGM_FI_DEV_POWER_USAGE,如果能看到类似 DCGM_FI_DEV_POWER_USAGE{gpu="0"} 65.2 的输出,说明GPU功耗指标已经可以采集。
注意:Docker需要安装NVIDIA Container Toolkit,否则 --gpus all 会报错。

配置Prometheus抓取与能耗看板

采集组件就绪后,需要让Prometheus定期拉取指标,并在Grafana中展示。

在Prometheus配置文件 prometheus.yml 的 scrape_configs 部分加入两个任务:

scrape_configs:
  - job_name: 'node'
    static_configs:
      - targets: ['localhost:9100']
  - job_name: 'dcgm'
    static_configs:
      - targets: ['localhost:9400']

重启Prometheus后,在Web界面 Status -> Targets 中确认两个任务均为 UP。
然后导入Grafana看板:Node Exporter常用看板ID为 1860,DCGM看板可搜索NVIDIA官方提供的Dashboard ID(例如 12239),导入后即可看到GPU功耗曲线。

避坑提醒:如果Prometheus抓取报错 context deadline exceeded,先检查目标端口是否监听:ss -tlnp | grep -E '9100|9400';
如果DCGM Exporter容器频繁退出,检查GPU驱动版本与DCGM镜像版本是否匹配,可尝试更换镜像标签。

编写AI任务能耗调度策略

有了监控数据,就可以设置简单的节能策略。
以下策略适合单机场景,不需要复杂编排平台。

  • 限制GPU功耗上限:使用 nvidia-smi -pl 250 将GPU功耗限制在250瓦(具体数值以GPU型号允许范围为参考),可在训练任务启动前执行,避免峰值功耗过高。
  • 错峰调度:通过 crontab -e 添加定时任务,将非紧急的AI批处理任务安排在电价低谷或业务低峰时段运行,例如 0 2 * * * /usr/bin/python3 /opt/ai/batch_job.py。
  • 空闲降频:如果GPU长时间空闲但功耗仍高,检查是否有残留进程占用,使用 nvidia-smi 查看进程列表,必要时用 kill 结束无用进程。

这些策略需要根据你的业务容忍度调整,不要直接照搬数值。
修改功耗上限前,建议先记录当前任务在默认设置下的完成时间和功耗,对比后再决定是否长期启用。

验证配置是否生效

配置完成后,从三个层面检查:

  • 指标层:在Prometheus查询框输入 DCGM_FI_DEV_POWER_USAGE,应返回当前GPU功耗数值;输入 node_power_supply_watts(部分主板支持)可查看整机功耗。
  • 看板层:Grafana中GPU功耗曲线应随任务负载变化,空闲时明显下降。
  • 策略层:执行 nvidia-smi -q -d POWER 确认功耗限制已生效;查看定时任务日志 grep CRON /var/log/syslog 确认错峰任务按计划触发。

如果某项验证失败,
优先回看对应组件的日志:journalctl -u node_exporter -n 50 或 docker logs ,
根据报错关键词搜索处理。

常见疑问

没有GPU的服务器能做AI能耗管理吗?
可以。AI任务也可能跑在CPU上,此时重点采集CPU利用率和整机功耗(通过IPMI或智能PDU),策略上以错峰和降频为主,工具链中的DCGM部分可以省略。

功耗数据波动很大,正常吗?
AI训练任务本身负载波动大,功耗随之变化是正常的。建议观察一段时间内的平均值和峰值,而不是单个采样点。如果波动伴随任务异常,检查是否有其他进程争抢GPU。

限制功耗会影响模型训练速度吗?
有可能。功耗上限降低后,GPU可能降频,训练时间会变长。建议在小规模任务上对比限制前后的耗时和能耗,找到适合你业务的平衡点,不要盲目追求最低功耗。

完成以上配置后,你已经具备了对AI任务能耗的基本观测和调节能力。
后续可以根据实际数据逐步细化策略,例如结合任务队列动态调整功耗上限,或按时间段自动切换调度规则。

分享到:
上一篇
AI碳排放监测配置:从零搭建数据采集与可视化流程
下一篇
零基础跑通AI建筑方案生成:环境配置与出图验证
1
系统公告

泽御云中秋国庆双节活动上线:新购8折,拼团3.99元起

尊敬的用户:
泽御云“月满中秋·礼贺国庆”双节活动现已开启,活动时间为2026年9月23日至10月10日。 活动期间可享以下福利:
1. 常规云服务器新购使用优惠码“泽御中秋国庆同乐”,符合条件的订单享8折优惠。
2. 香港精品云服务器5人拼团低至3.99元,部分4核4G套餐3人拼团年付388元,续费同价。
3. 新用户购买年付云服务器,符合活动规则可赠送2个月使用时长。
4. 老用户续费季度赠15天,续费年度赠2个月;活动期间升级配置免收配置迁移手续费。
5. 推荐好友成功下单,符合条件的推荐人可获赠7天服务器使用时长。
6. 活动期间享宕机补偿标准翻倍、简单网站迁移协助及技术工单优先处理权益。
温馨提示:优惠码不适用于拼团套餐、活动轻量产品、年付订单及续费订单;拼团套餐为独立特价活动,不与赠时类福利叠加。赠送时长不可折现、退款或跨账户转移,具体规则以活动页面说明为准。
服务中心
客服
在线客服
24小时为您服务
咨询
联系我们
联系我们,为您的业务提供专属服务。
24/7 技术支持
如果您遇到寻求进一步的帮助,请过工单与我们进行联系。
24/7 即时支持
泽御云
售前客服
泽御云
泽御云
售后客服
泽御云
技术支持
评价
您对当前页面的整体感受是否满意?
😞
非常不满意
😕
不满意
😐
一般
🙂
满意
😊
非常满意