Many-Core Processor Dynamic Profiling for Reliability

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Many-core processors face challenges with process variations, high transient error rates, and reliability deterioration over time, making traditional factory testing ineffective for ensuring reliable computing, as they scale down to smaller dimensions.

Innovation Solution

Implement a dynamic profiling system that periodically tests each core's parameters such as operating frequency, power consumption, and functional correctness, using modules like power consumption measuring, temperature sensors, and functional correctness checking, to create and update dynamic profiles, which are then used to group cores and allocate tasks optimally and reconfigure the interconnect fabric for improved performance and power management.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If factory testing and burn-in are applied to ensure reliable computing, then initial reliability is improved, but the ability to maintain reliability over time deteriorates due to transistor degradation

Engineering Contradiction:
Improveinitial reliabilityVSAvoidreliability over time
Core Design Contradiction:
ReliabilityVSDuration of action of stationary object

Solution Approach 1:

The system performs preliminary characterization of each core's performance parameters (frequency, power consumption, leakage) during factory testing and stores this information in a database. This preliminary action enables the system to make informed decisions about core allocation and testing schedules throughout the processor's lifetime, addressing the limitation of traditional one-time testing.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system implements periodic re-testing of cores and uses the results to update their characterized parameters in the database. This feedback mechanism allows the system to detect and respond to transistor degradation over time, adjusting core allocation and testing schedules to maintain reliability throughout the processor's operational life.

Inventive Principle:
Principle #23Feedback

2Quantity of substance

If process technology scales down to small dimensions, then transistor density and core count are improved, but transient error rates worsen due to small capacitance and low voltages

Engineering Contradiction:
Improvetransistor densityVSAvoidtransient error rate
Core Design Contradiction:
Quantity of substanceVSReliability

Solution Approach 1:

Each core is equipped with self-testing capabilities that allow it to periodically characterize its own performance parameters including functional correctness, operating frequency, power consumption, and power leakage. This self-service approach enables the system to detect and report transient errors without requiring external intervention, crucial for maintaining reliability in high-density many-core processors.

Inventive Principle:
Principle #25Self-service

3Ease of manufacture

If one-time factory testing is used, then manufacturing simplicity is maintained, but the ability to adapt to core performance variations over time is lost

Engineering Contradiction:
Improvetesting simplicityVSAvoidadaptation to performance variations
Core Design Contradiction:
Ease of manufactureVSAdaptability or versatility

Solution Approach 1:

The system transitions from static one-time factory testing to dynamic periodic re-testing throughout the processor's lifetime. The testing schedule and characterization parameters are dynamically adjusted based on core performance degradation patterns, allowing the system to adapt to changing conditions while maintaining manufacturing simplicity through automated procedures.

Inventive Principle:
Principle #15Dynamics

Data Source

PatentUS7412353B2Reliable computing with a many-core processor
Publication Date: 2008.08.12 TAHOE RES LTD
  • US7412353B2 patent drawing
  • US7412353B2 patent drawing
  • US7412353B2 patent drawing

AI summary

According to embodiments of the disclosed subject matter, cores in a many-core processor may be periodically tested to obtain and/or refresh their dynamic profiles. The dynamic profile of a core may include information on its maximum operating frequency, power consumption, power leakage, functional correctness, and other parameters, as well as the trending information of these parameters. Once a dynamic profile has been created for each core, cores in a many-core processor may be grouped into different bins according to their characteristics. Based on dynamic profiles and the grouping information, the operating system (“OS”) or other software may allocate a task to those cores that are most suitable for the task. The interconnect fabric in the many-core processor may be reconfigured to ensure a high level of connectivity among the selected cores. Additionally, cores may be re-allocated and/or re-balanced to a task in response to changes in the environment.