Virtualized Control Threads for Multi-Core Processor Partitioning

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Symmetric multi-core processors (MCPs) suffer from low utilization and design inflexibility, leading to high power consumption and inefficiency due to unused sub-processing elements, which complicates optimization as processor dimensions increase.

Innovation Solution

The MCP is partitioned physically to allow virtualized control threads to traverse physical boundaries, enabling a smaller number of main processing elements to control groups of sub-processing elements across different partitions, optimizing hardware and compiler design complexity and power management.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Device complexity

If the MCP is physically partitioned with fixed MPE-SPE associations, then hardware design complexity is reduced, but utilization efficiency decreases and power consumption increases due to unused SPEs

Engineering Contradiction:
Improvehardware design complexityVSAvoidMCP utilization efficiency
Core Design Contradiction:
Device complexityVSProductivity

Solution Approach 1:

The patent segments the control function by introducing virtualized control threads that are separate from physical MPEs. These virtualized threads can dynamically associate with different SPEs across physical partitions, allowing flexible resource allocation while maintaining simple physical partitioning. This resolves the contradiction by separating control logic from physical hardware boundaries.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces virtualized control threads as an intermediary layer between MPEs and SPEs. This intermediary enables dynamic association and control across physical partitions without requiring complex direct wiring or control logic between every MPE-SPE pair, thus improving utilization while avoiding hardware complexity.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Power

If more SPEs are added to increase computation capacity, then processing power increases, but power consumption increases due to continuous leakage current in stand-by SPEs

Engineering Contradiction:
Improvecomputation capacityVSAvoidpower consumption
Core Design Contradiction:
PowerVSLoss of energy

Solution Approach 1:

The patent implements dynamic association between virtualized control threads and SPEs, allowing the system to activate only the SPEs needed for current computational tasks. SPEs can be dynamically assigned and unassigned based on workload requirements, preventing continuous operation of stand-by SPEs and reducing leakage current losses while maintaining computation capacity.

Inventive Principle:
Principle #15Dynamics

3Productivity

If MPEs are increased to control more SPEs, then utilization efficiency improves, but device complexity and design difficulty increase

Engineering Contradiction:
Improveutilization efficiencyVSAvoiddesign complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent creates virtualized copies of control threads that can be instantiated multiple times and associated with different SPEs. Instead of adding more physical MPEs, the system uses virtualized control thread copies that can dynamically manage multiple SPEs, improving utilization efficiency without increasing physical device complexity.

Inventive Principle:
Principle #26Copying

4Manufacturing precision

If physical partitions are fixed with specific MPE-SPE mappings, then manufacturing precision is improved, but adaptability decreases for different computational workloads

Engineering Contradiction:
Improvepartitioning precisionVSAvoidworkload adaptability
Core Design Contradiction:
Manufacturing precisionVSAdaptability or versatility

Solution Approach 1:

The patent adds a virtualization dimension to the physical partitioning structure. While physical partitions maintain precise, fixed MPE-SPE mappings for manufacturing simplicity, a second virtualization layer is introduced that allows flexible, dynamic associations across these physical boundaries. This resolves the contradiction by operating in two dimensions: fixed physical layer for precision and flexible virtual layer for adaptability.

Inventive Principle:
Principle #17Another dimension (Dimensionality change)

Data Source

PatentUS9361160B2Virtualization across physical partitions of a multi-core processor (MCP)
Publication Date: 2016.06.07 KYNDRYL INC
  • US9361160B2 patent drawing
  • US9361160B2 patent drawing

AI summary

A generic microprocessor architecture is provided with a set (e.g., one or more) of controlling/main processing elements (e.g., MPEs) and a set of groups of sub-processing elements (e.g., SPEs). Under this arrangement, MPEs and SPEs are organized in a way that a smaller number MPEs control the behavior of a group of SPEs using program code embodied as a set of virtualized control threads. The apparatus includes a MCP coupled to a power supply coupled with cores to provide a supply voltage to each core (or core group) and controlling-digital elements and multiple instances of sub-processing elements. In accordance with these features, virtualized control threads can traverse the physical boundaries of the MCP to control SPE(s) (e.g., logical partitions having one or more SPEs) in a different physical partition (e.g., different from the physical partition from which the virtualized control threads originated.