SIMD Processor Dynamic Parallelism Control

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current SIMD processor architectures face inefficiencies in power consumption and heat generation due to unnecessary activation of all parallel processing elements, even when not all resources are needed for a task, leading to wasted energy and potential overheating.

Innovation Solution

Implementing a control logic that dynamically activates and deactivates parallel processing elements based on detected processing conditions, such as task requirements or environmental factors like temperature, to match the degree of parallelism to the specific needs of the task at hand, thereby conserving energy and reducing heat generation.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If all parallel processing elements are activated continuously to provide maximum processing capability, then processing speed and productivity are improved, but power consumption and heat generation increase unnecessarily

Engineering Contradiction:
Improveprocessing speedVSAvoidpower consumption
Core Design Contradiction:
ProductivityVSUse of energy by moving object

Solution Approach 1:

The processor dynamically adjusts the number of active parallel processing elements based on the actual computational requirements of executing instructions. The control logic monitors instruction queues and activates only the necessary number of processing elements needed to execute current instruction batches, rather than keeping all elements continuously active. This dynamic adjustment resolves the contradiction by matching processing capacity to actual workload, maintaining high productivity when needed while reducing power consumption during lower-demand periods.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The system changes the operational parameter of parallelism degree by adjusting how many processing elements are active based on instruction queue depth and computational demand. When the instruction queue indicates sufficient work, more processing elements are activated to maximize throughput; when the queue is shallow, fewer elements remain active to conserve energy. This parameter adjustment resolves the contradiction between maintaining high processing speed and reducing unnecessary power consumption.

Inventive Principle:
Principle #35Parameter changes

2Productivity

If a large number of parallel processing elements are activated to handle complex tasks, then processing capability is improved, but heat generation increases leading to potential overheating

Engineering Contradiction:
Improveprocessing capabilityVSAvoidheat generation
Core Design Contradiction:
ProductivityVSTemperature

Solution Approach 1:

The processor implements dynamic thermal management by monitoring temperature conditions and adjusting the number of active processing elements accordingly. When temperature thresholds are approached, the control logic reduces the number of active processing elements to decrease heat generation, while still maintaining sufficient processing capability for current tasks. This dynamic response resolves the contradiction between processing capability and heat generation by adapting resource allocation to thermal conditions.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The system takes preliminary anti-action by proactively reducing processing element activation before critical overheating occurs. The control logic monitors thermal conditions and workload patterns, and preemptively adjusts the number of active processing elements to prevent excessive heat buildup, thereby avoiding thermal throttling or shutdown scenarios. This preventive approach resolves the contradiction by maintaining processing capability within safe thermal boundaries.

Inventive Principle:
Principle #9Preliminary anti-action

3Productivity

If the data path width is increased to process larger data units, then processing efficiency for large data is improved, but the processor cannot efficiently handle smaller data units without wasting resources

Engineering Contradiction:
Improveprocessing efficiency for large dataVSAvoidresource waste
Core Design Contradiction:
ProductivityVSLoss of energy

Solution Approach 1:

The processor segments the parallel processing elements into groups that can be independently activated based on data width requirements. When processing small data units, only the necessary subset of processing elements is activated, rather than deploying the full capacity designed for large data processing. This segmentation resolves the contradiction by allowing the processor to efficiently handle both large and small data units by activating only the required number of processing elements, thereby avoiding resource waste while maintaining processing efficiency for large data when needed.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The system applies local quality by varying the activation level of different processing elements based on the specific data width and computational requirements of current tasks. Rather than uniformly activating all processing elements or the entire data path, the control logic selectively activates only the local subset of resources needed for the current workload. This resolves the contradiction between processing efficiency for large data and avoiding resource waste for small data by matching resource allocation to actual local requirements.

Inventive Principle:
Principle #3Local quality

Data Source

PatentEP2290527B1Microprocessor with automatic selection of SIMD parallelism
Publication Date: 2012.07.18 QUALCOMM INC
  • EP2290527B1 patent drawingFigure 1
  • EP2290527B1 patent drawingFigure 2

AI summary

Automatic selective power and energy control of one or more processing elements matches a degree of parallelism to a monitored condition, in a highly parallel programmable data processor. For example, logic of the parallel processor detects when program operations (e.g. for a particular task or due to a detected temperature) require less than the full width of the data path. In response, the control logic automatically sets a mode of operation requiring a subset of the parallel processing capacity. At least one parallel processing element, that is not needed, can be shut down, to conserve energy and/or to reduce heating (i.e., power consumption). At a later time, when operation of the added capacity is appropriate, the logic detects the change in processing conditions and automatically sets the mode of operation to that of the wider data path, typically the full width. The mode change reactivates the previously shut-down processing element.