一个量化和交流机器学习方法碳足迹的工具
cumulator的Python项目详细描述
一个用于量化和报告学术界和医疗保健领域机器学习计算和通信的碳足迹的工具
目的
提高对机器学习方法的碳足迹的认识,鼓励进一步优化和合理使用人工智能工具。 这项工作提倡可持续人工智能和合理使用IT系统。在
主要碳指标
- 1小时的GPU负载相当于112 gCO2eq
- 1gb的数据流量相当于31个gCO2eq
安装和使用
免费软件:麻省理工学院许可证
pip install cumulator<;-安装累积器
from cumulator import base<;-导入脚本
cumulator = base.Cumulator()<;-创建累积器实例
测量计算成本。在执行ML计算时(通常在每个交互中),使用cumulator.on(),cumulator.off()激活或停用计时器。它将自动将每个持续时间记录在cumulator.time_list中,并在cumulator.cumulated_time()中求和。然后使用cumulator.computation_costs()返回所有计算的碳足迹。在
测量通信成本。每次您的模型将数据文件发送到网络的另一个节点时,请记录使用cumulator.data_transferred(file_size)进行通信的文件的大小(以千字节为单位)。传输的数据量自动记录在cumulator.file_size_list中,并累计到cumulator.cumulated_data_traffic。然后使用cumulator.communication_costs()返回所有通信的碳足迹。在
使用cumulator.total_carbon_footprint()返回总碳足迹。您还可以使用display_carbon_footprint()
默认假设(可以手动修改以获得更好的估计):
self.hardware_load = 250 / 3.6e6<;-计算成本:典型GPU的功耗(瓦特)转换为kWh/s
self.one_byte_model = 6.894E-8<;-通信成本:典型数据中心流量的平均能量影响,kWh/kB
self.carbon_intensity = 447<;-转换为碳足迹:欧盟2014年平均碳强度值(gCO2eq/kWh)
self.n_gpu = 1<;-并行使用的GPU数
项目结构
src/ ├── cumulator ├── base.py <- implementation of the Cumulator class └── bonus.py <- Impact Statement Protocol
变更日志
- 2020年6月18日:0.0.6更新自述文件.rst在
- 2020年6月11日:0.0.5添加处理器数量(0.0.4失败)
- 2020年6月8日:增加0.0.3奖金.py碳影响声明
- 2020年6月7日:0.0.2增加通信成本并清理src/
- 2020年5月21日:在PypI上部署0.0.1并与Alg-E集成
链接
- 材料:https://drive.google.com/drive/u/1/folders/1Cm7XmSjXo9cdexejbLpbV0TxJkthlAGR
- GitHub:https://github.com/epfl-iglobalhealth/cumulator
- PyPI:https://pypi.org/project/cumulator/
变更日志
- PyPI的第一个版本。在
- 项目
标签: