Transparent Workload Migration Between Micro-Architecturally Different Processors
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Modern data processing systems face inefficiencies in energy consumption due to the wide variation in performance demands between tasks, as single processors struggle to handle diverse tasks effectively, and existing multi-core architectures incur significant overhead in switching applications between cores, which can reduce energy savings.
Innovation Solution
A data processing apparatus with architecturally compatible but micro-architecturally different processing circuitry, featuring a switch controller that transparently migrates workloads between compatible processing units, masking processor-specific information from the operating system and utilizing cache coherency or dedicated buses for efficient state transfer, thereby reducing energy consumption and switching overhead.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If a single high-performance processor is used to handle all tasks, then performance requirements are met, but energy consumption increases
Solution Approach 1:
The system segments processing capabilities into multiple processor instances with different performance levels (e.g., high-performance and low-performance cores). Each processor instance is optimized for specific performance requirements, allowing the system to select the appropriate instance based on task demands. This segmentation enables low-performance processors to handle simple tasks, reducing overall energy consumption while maintaining the capability to meet high-performance requirements when needed.
2Use of energy by moving object
If workload switching between processor instances is implemented, then energy efficiency improves, but switching overhead increases
Solution Approach 1:
The system performs preliminary actions by pre-configuring multiple processor instances with different performance characteristics before workload arrival. Processor instances are pre-initialized with appropriate architectural states and configurations, so when a workload needs to be switched, the target processor instance is already prepared and ready to accept the workload immediately. This eliminates much of the traditional switching overhead associated with initialization and configuration.
Solution Approach 2:
The system uses architectural state copying mechanisms to efficiently transfer workload state between processor instances. Instead of full context switching with extensive memory operations, the invention copies only the necessary architectural state information between instances. This copying approach significantly reduces switching overhead compared to traditional context switching methods while enabling rapid workload migration between processor instances of different performance levels.
3Adaptability or versatility
If architectural state is transferred between processor instances, then workload migration becomes possible, but energy consumption during transfer increases
Solution Approach 1:
The invention extracts only the essential architectural state information needed for workload migration, rather than transferring complete processor states. By identifying and transferring only the critical state elements (such as register values, program counter, and essential configuration bits), the system enables workload migration between processor instances with minimal energy expenditure. This extraction approach significantly reduces the energy cost of state transfer compared to traditional full-state migration methods.
Data Source
AI summary
A data processing apparatus has first processing circuitry which is architecturally compatible with second processing circuitry, but with the first processing circuitry being miero-architccturally different from the second processing circuitry. A switch controller performs a handover operation to transfer performance of the workload from source processing circuitry to destination processing circuitry, with the source processing circuitry being one of the first and second processing circuitry and the destination processing circuitry being the other of the first and second processing circuitry. During the handover operation, the switch controller causes the source processing circuitry to makes it current architectural state available to the destination processing circuitry and is necessary for the destination processing circuitry to successfully lake over performance of the workload from the source processing circuitry. The switch controller masks predetermined processor specific configuration information such that the transfer of the workload is transparent to that operating system.


