Application Power Profiling on Compute Nodes

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current computer systems, particularly parallel computers, face challenges in efficiently profiling and reducing power consumption during application execution on compute nodes, as they do not uniformly utilize hardware components, leading to varying power consumption levels across different processing operations.

Innovation Solution

A method and system for profiling an application's power consumption on a compute node by identifying a hardware power consumption profile and determining a power consumption profile for the application based on the hardware profile, allowing for reporting and potential alteration to optimize energy use.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Speed

If parallel computing is used to increase processing performance, then computing speed is improved, but power consumption increases

Engineering Contradiction:
Improvecomputing speedVSAvoidpower consumption
Core Design Contradiction:
SpeedVSUse of energy by moving object

Solution Approach 1:

The system performs preliminary analysis of application code to identify power-consuming operations before execution. By pre-analyzing the code structure and predicting power consumption patterns, the system can prepare optimization strategies in advance, such as selecting lower-power computational paths or scheduling tasks during periods of available power capacity.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system dynamically changes operational parameters based on power conditions. It monitors actual power consumption and adjusts execution parameters such as processor frequency, memory access patterns, or communication intensity to balance performance with power usage, allowing parallel computing to proceed at reduced power levels when necessary.

Inventive Principle:
Principle #35Parameter changes

2Productivity

If hardware components are utilized non-uniformly during application processing, then processing efficiency is improved, but power consumption becomes unpredictable and difficult to profile

Engineering Contradiction:
Improveprocessing efficiencyVSAvoidpower consumption measurement
Core Design Contradiction:
ProductivityVSMeasurement precision

Solution Approach 1:

The system segments the application code into distinct operational regions and identifies which hardware components are active in each region. By dividing the code into basic blocks and analyzing control flow, it creates a detailed map of hardware utilization patterns, allowing precise attribution of power consumption to specific code sections and hardware operations.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The system implements feedback mechanisms that monitor actual hardware utilization during execution and compare it with predicted patterns. This feedback loop allows the system to refine its power consumption models and adjust predictions based on actual observed behavior, improving measurement precision over time despite non-uniform hardware usage patterns.

Inventive Principle:
Principle #23Feedback

Data Source

PatentUS8539270B2Profiling an application for power consumption during execution on a compute node
Publication Date: 2013.09.17 INTERNATIONAL BUSINESS MACHINE CORPORATION
  • US8539270B2 patent drawing
  • US8539270B2 patent drawing
  • US8539270B2 patent drawing

AI summary

Methods, apparatus, and products are disclosed for profiling an application for power consumption during execution on a compute node that include: receiving an application for execution on a compute node; identifying a hardware power consumption profile for the compute node, the hardware power consumption profile specifying power consumption for compute node hardware during performance of various processing operations; determining a power consumption profile for the application in dependence upon the application and the hardware power consumption profile for the compute node; and reporting the power consumption profile for the application.