Software-Defined Super Cores for Flexible Performance per Watt
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
High performance cores through frequency turbo are inefficient in terms of performance per watt, and increasing core size for higher IPC (instructions per cycle) leads to a high dependence on process technology node scaling and reduces core count, while existing performance and efficiency core architectures have a fixed and inflexible ratio of performance and efficiency.
Innovation Solution
The software defined super core (SDC) aggregates neighboring cores into a virtual construct, allowing them to run different portions of an application's instructions while maintaining the appearance of a single core, with a software framework that splits threads across these cores and hardware support for memory communication, ensuring in-order retirement and low execution overheads.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If frequency turbo is used to achieve high performance cores, then performance is improved, but performance per watt efficiency deteriorates
Solution Approach 1:
The patent segments a single high-performance core into multiple virtual cores through time-sliced multi-threading. Instead of scaling up a single core's frequency and power consumption, the system divides the core's execution resources across multiple virtual cores, allowing parallel execution of multiple threads while maintaining lower power consumption per virtual core.
2Productivity
If core size is increased for higher IPC, then instructions per cycle is improved, but dependence on process technology node scaling increases and core count decreases
Solution Approach 1:
The patent implements dynamic time-sliced multi-threading where a single physical core dynamically switches between multiple virtual cores based on workload requirements. This dynamic allocation allows the system to maintain high IPC on the physical core while virtually increasing the core count to handle multiple threads, eliminating the need for physical core multiplication and reducing dependence on process technology scaling.
3Productivity
If performance and efficiency core architecture is used, then single thread and multithread performance requirements are balanced, but the ratio of performance and efficiency cores is fixed and inflexible
Solution Approach 1:
The patent makes a single physical core universal by enabling it to function as multiple virtual cores with different performance characteristics. Through software-defined configurations and time-sliced execution, the same physical hardware can adapt to serve as performance-optimized or efficiency-optimized virtual cores depending on the thread requirements, eliminating the need for fixed architectural ratios of different core types.
Data Source
AI summary
Techniques for software defined super core usage are described. In some examples, a first and second processor core are to operate as a single virtual core enabled by the operating system to fetch the first set of instruction segments of the single threaded program and the second set of instruction segments of the single threaded program concurrently using flow control instructions that have been inserted into the single threaded program.


