Multi-Core Processor Clock Rate Prioritization via Dynamic Monitoring

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Multi-core processors face suboptimal system throughput due to fixed power allocation among cores, leading to inefficient use of power and heat dissipation limitations, which restricts performance improvements.

Innovation Solution

A monitoring module measures instruction arrival rates and calculates optimal service rates for each core, dynamically adjusting clock rates to allocate power efficiently, thereby improving instruction throughput while maintaining power consumption within the processor's envelope.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If all cores operate at full speed to maximize instruction throughput, then system throughput is improved, but power consumption exceeds the processor's power envelope

Engineering Contradiction:
Improveinstruction throughputVSAvoidpower consumption
Core Design Contradiction:
ProductivityVSUse of energy by moving object

Solution Approach 1:

The patent implements dynamic frequency adjustment where each core's clock rate is continuously adapted based on real-time workload monitoring. The monitoring module tracks instruction arrival rates and the controller adjusts frequencies dynamically, allowing the system to achieve high throughput when needed while consuming less power during lower-demand periods, thus resolving the contradiction between maximum productivity and power envelope constraints.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The system changes the operational parameters (clock frequencies) of individual cores based on workload characteristics. By monitoring instruction arrival rates and adjusting frequencies accordingly, the system optimizes the balance between throughput and power consumption, allowing frequencies to vary within a spectrum rather than remaining fixed, thereby achieving high performance when necessary while staying within power limits.

Inventive Principle:
Principle #35Parameter changes

2Productivity

If fixed power allocation is used among cores to simplify power management, then device complexity is reduced, but system throughput becomes suboptimal

Engineering Contradiction:
Improvesystem throughputVSAvoidpower allocation complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent implements a feedback mechanism where the monitoring module continuously observes instruction arrival rates at each core and provides this information to the controller. The controller uses this feedback to dynamically adjust clock frequencies, creating a closed-loop system that automatically optimizes throughput based on actual workload conditions without requiring complex manual power allocation strategies.

Inventive Principle:
Principle #23Feedback

Solution Approach 2:

The system performs self-optimization through automated monitoring and control. The monitoring module and controller work autonomously to adjust core frequencies based on observed workload patterns, eliminating the need for external intervention or complex predetermined power allocation schemes while maximizing system throughput adaptively.

Inventive Principle:
Principle #25Self-service

Data Source

PatentUS8015427B2System and method for prioritization of clock rates in a multi-core processor
Publication Date: 2011.09.06 NETAPP INC
  • US8015427B2 patent drawing
  • US8015427B2 patent drawing
  • US8015427B2 patent drawing

AI summary

A system and method for prioritization of clock rates in a multi-core processor is provided. Instruction arrival rates are measured during a time interval Ti−1 to Ti by a monitoring module either internal to the processor or operatively interconnected with the processor. Using the measured instruction arrival rates, the monitoring module calculates an optimal instruction arrival rate for each core of the processor. For processors that support continuous frequency changes for cores, each core is then set to an optimal service rate. For processors that only support a discrete set of arrival rates, the optimal rates are mapped to a closest supported rate and the cores are set to the closest supported rate. This procedure is then repeated for each time interval.