Energy Model-Based Frequency Estimation for HPC Power Management

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In high-performance computing systems, existing methods for power saving, such as dynamic voltage and frequency scaling, require first-time execution of programs for energy consumption optimization, leading to inefficiencies when programs are modified frequently, as they fail to accurately estimate the minimum energy consumption frequency without initial execution data.

Innovation Solution

A computation apparatus and method that store program property information, including innermost loop and other loop details, to estimate the minimum operating frequency for new or modified programs based on similar test program data, allowing energy-efficient execution without repeated first-time runs.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Measurement precision

If first-time execution is performed for each new or modified program to obtain energy consumption data, then accurate energy consumption optimization is achieved, but execution time and energy waste increase

Engineering Contradiction:
Improveenergy consumption measurement accuracyVSAvoidexecution time for first-time runs
Core Design Contradiction:
Measurement precisionVSLoss of time

Solution Approach 1:

The system performs preliminary execution of test programs at multiple frequencies during system configuration to build an energy consumption model in advance. This model stores the relationship between program characteristics and optimal frequencies, enabling later programs to benefit from pre-computed data without requiring first-time execution for each new program.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system copies and reuses energy consumption data from test programs with similar characteristics to new programs. By comparing program properties (instruction types, loop structures, computational patterns), the system identifies matching test programs and applies their determined optimal frequencies to new programs, avoiding redundant first-time executions.

Inventive Principle:
Principle #26Copying

2Measurement precision

If first-time execution is required for every modified program, then energy optimization accuracy is maintained, but productivity decreases due to repeated executions

Engineering Contradiction:
Improveenergy optimization accuracyVSAvoidprogram execution efficiency
Core Design Contradiction:
Measurement precisionVSProductivity

Solution Approach 1:

Energy consumption characteristics are determined in advance through test program executions during system setup. The resulting energy models and optimal frequency data are stored for reuse, eliminating the need for productivity-reducing first-time executions when programs are later modified.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system changes the approach from direct measurement to model-based estimation by modifying key parameters. Instead of measuring energy consumption through actual execution for each program, the system uses stored energy models and program characteristic parameters to determine optimal frequencies, significantly improving productivity while maintaining accuracy.

Inventive Principle:
Principle #35Parameter changes

3Measurement precision

If test programs are executed at multiple frequencies to build energy models, then accurate estimation is achieved, but initial setup time and energy consumption increase

Engineering Contradiction:
Improveenergy model accuracyVSAvoidsetup time for test executions
Core Design Contradiction:
Measurement precisionVSLoss of time

Solution Approach 1:

The system accepts increased setup time as a one-time cost during system configuration. Test programs are executed at multiple frequencies during this initial phase to build comprehensive energy models. These models are then reused indefinitely for subsequent programs, amortizing the initial time investment across numerous future executions.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system transitions from the setup phase (where multiple test executions occur) to the operational phase (where pre-built models are used). This phase transition allows the system to front-load the time and energy investment in model building, then enjoy sustained benefits during normal operation without repeated setup overhead.

Inventive Principle:
Principle #36Phase transitions

4Device complexity

If default operating frequency is used for first-time execution, then system simplicity is maintained, but energy consumption is not optimized

Engineering Contradiction:
Improvesystem complexityVSAvoidCPU energy consumption
Core Design Contradiction:
Device complexityVSUse of energy by moving object

Solution Approach 1:

The energy saving management system performs multiple functions: it manages default frequency operations for simplicity while simultaneously providing optimized frequency selection based on program characteristics. This multi-functionality allows the system to serve both simple default operations and energy-optimized operations without requiring separate systems.

Inventive Principle:
Principle #6Universality (Multi-functionality)

Solution Approach 2:

The energy saving management system acts as an intermediary between the job management system and the CPU frequency control. It receives program information, determines optimal frequencies using energy models, and adjusts CPU frequencies accordingly. This intermediary layer adds minimal complexity while enabling significant energy savings without disrupting the existing job management workflow.

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentUS10025368B2Computation apparatus and frequency determination method
Publication Date: 2018.07.17 FUJITSU LTD
  • US10025368B2 patent drawing
  • US10025368B2 patent drawing
  • US10025368B2 patent drawing

AI summary

An apparatus stores, based on results of sample-programs executed at operating frequencies, program-property information that includes innermost-loop-property information and other-loops-property information, and a minimum operating frequency indicating an operating frequency, of the operating frequencies, at which energy consumption upon execution of each of the sample-programs is the minimum; obtains first program-property information that is the program-property information corresponding to a first program before execution of the first program that is a program other than the sample-programs; and specifies second program-property information, of the program-property information stored in a memory, that includes information most similar to information included in the first program-property information obtained and estimating a first operating frequency at which the energy consumption upon execution of the first program is the minimum to be an operating frequency, of the minimum operating frequencies stored in the memory, that corresponds to the second program-property information specified.