Table of Contents
Fetching ...

Enhancing Energy-Awareness in Deep Learning through Fine-Grained Energy Measurement

Saurabhsingh Rajput, Tim Widmayer, Ziyuan Shang, Maria Kechagia, Federica Sarro, Tushar Sharma

TL;DR

FECoM introduces a formally automated, static-instrumentation framework for fine-grained energy measurement of deep-learning APIs, enabling energy profiling at the API level within DL frameworks like TensorFlow. It combines AST-based patching (Patcher), rigorous pre-measurement stability checks, and a measurement module that records net energy by subtracting stable baselines across CPU, RAM, and GPU, with data and patches made publicly available for replication. Empirical results show that API-level energy sums align with project-level energy within explainable bounds, that CPU/GPU energy scales linearly with input data size while RAM behavior is more nuanced, and that several design considerations are essential for reliable fine-grained energy tools. Overall, FECoM advances energy-aware DL development by providing a repeatable, automated method to quantify and document API-level energy consumption, informing both researchers and practitioners toward greener AI workflows.

Abstract

With the increasing usage, scale, and complexity of Deep Learning (DL) models, their rapidly growing energy consumption has become a critical concern. Promoting green development and energy awareness at different granularities is the need of the hour to limit carbon emissions of DL systems. However, the lack of standard and repeatable tools to accurately measure and optimize energy consumption at a fine granularity (e.g., at method level) hinders progress in this area. This paper introduces FECoM (Fine-grained Energy Consumption Meter), a framework for fine-grained DL energy consumption measurement. FECoM enables researchers and developers to profile DL APIs from energy perspective. FECoM addresses the challenges of measuring energy consumption at fine-grained level by using static instrumentation and considering various factors, including computational load and temperature stability. We assess FECoM's capability to measure fine-grained energy consumption for one of the most popular open-source DL frameworks, namely TensorFlow. Using FECoM, we also investigate the impact of parameter size and execution time on energy consumption, enriching our understanding of TensorFlow APIs' energy profiles. Furthermore, we elaborate on the considerations, issues, and challenges that one needs to consider while designing and implementing a fine-grained energy consumption measurement tool. This work will facilitate further advances in DL energy measurement and the development of energy-aware practices for DL systems.

Enhancing Energy-Awareness in Deep Learning through Fine-Grained Energy Measurement

TL;DR

FECoM introduces a formally automated, static-instrumentation framework for fine-grained energy measurement of deep-learning APIs, enabling energy profiling at the API level within DL frameworks like TensorFlow. It combines AST-based patching (Patcher), rigorous pre-measurement stability checks, and a measurement module that records net energy by subtracting stable baselines across CPU, RAM, and GPU, with data and patches made publicly available for replication. Empirical results show that API-level energy sums align with project-level energy within explainable bounds, that CPU/GPU energy scales linearly with input data size while RAM behavior is more nuanced, and that several design considerations are essential for reliable fine-grained energy tools. Overall, FECoM advances energy-aware DL development by providing a repeatable, automated method to quantify and document API-level energy consumption, informing both researchers and practitioners toward greener AI workflows.

Abstract

With the increasing usage, scale, and complexity of Deep Learning (DL) models, their rapidly growing energy consumption has become a critical concern. Promoting green development and energy awareness at different granularities is the need of the hour to limit carbon emissions of DL systems. However, the lack of standard and repeatable tools to accurately measure and optimize energy consumption at a fine granularity (e.g., at method level) hinders progress in this area. This paper introduces FECoM (Fine-grained Energy Consumption Meter), a framework for fine-grained DL energy consumption measurement. FECoM enables researchers and developers to profile DL APIs from energy perspective. FECoM addresses the challenges of measuring energy consumption at fine-grained level by using static instrumentation and considering various factors, including computational load and temperature stability. We assess FECoM's capability to measure fine-grained energy consumption for one of the most popular open-source DL frameworks, namely TensorFlow. Using FECoM, we also investigate the impact of parameter size and execution time on energy consumption, enriching our understanding of TensorFlow APIs' energy profiles. Furthermore, we elaborate on the considerations, issues, and challenges that one needs to consider while designing and implementing a fine-grained energy consumption measurement tool. This work will facilitate further advances in DL energy measurement and the development of energy-aware practices for DL systems.
Paper Structure (35 sections, 2 equations, 6 figures, 2 tables)

This paper contains 35 sections, 2 equations, 6 figures, 2 tables.

Figures (6)

  • Figure 1: Architecture of the FECoM framework for energy measurement of individual methods.
  • Figure 2: CPU power over time for models.Sequential.fit from images/cnn.
  • Figure 3: RQ1. Energy consumption ( CPU, GPU, and RAM) at project and method levels.
  • Figure 4: RQ1. RAM power over time for models.Sequential.fit in images/cnn.
  • Figure 5: RQ2. Net energy consumption Vs. method call input size.
  • ...and 1 more figures