Assist Unit Selection via Dynamic Completion Time Comparison
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Microprocessors often fail to optimally utilize assist units, leading to potential delays in processing request completion times due to inadequate assessment of whether an assist unit should be used, as they may queue requests when other options could complete tasks faster.
Innovation Solution
Implement methods and systems that use assist unit hardware and management software to calculate and compare estimated completion times for processing requests with conventional hardware threads and other assist units, allowing for optimal selection of the fastest completion path.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Speed
If an assist unit is used to execute a function, then execution speed is improved, but completion time may increase due to queuing delays
Solution Approach 1:
The patent implements dynamic selection between assist unit execution and conventional hardware thread execution based on real-time system state. The management software continuously monitors assist unit availability and queue status, dynamically deciding whether to offload a function to an assist unit or execute it conventionally. This dynamic approach resolves the contradiction by adapting the execution path to current conditions, ensuring speed benefits are realized without incurring queuing delays.
Solution Approach 2:
The patent changes the parameter of execution path selection from static (always use assist unit if available) to dynamic (select based on completion time comparison). By calculating and comparing estimated completion times for both assist unit and conventional execution paths, the system selects the optimal path, thereby resolving the contradiction between execution speed improvement and completion time minimization.
2Productivity
If assist units are assigned to processing cores, then workload balancing is improved, but completion times increase when assist units are busy
Solution Approach 1:
The patent implements feedback mechanisms where the management software continuously monitors the state of assist units (busy/idle, queue status) and uses this feedback to make informed decisions about function offloading. When feedback indicates the assist unit is busy with a long queue, the system feedback-loops back to conventional execution, thereby maintaining productivity benefits while avoiding completion time delays.
Solution Approach 2:
The patent performs preliminary calculation of estimated completion times for both assist unit and conventional execution paths before making the execution decision. This preliminary action allows the system to predict potential queuing delays and proactively select the conventional path when assist unit queuing would cause delays, thereby preventing completion time increases while maintaining workload balancing benefits.
3Loss of time
If conventional hardware threads execute functions, then completion time is reduced when assist units are unavailable, but execution speed is slower
Solution Approach 1:
The patent changes the execution mode parameter dynamically based on real-time conditions. When the assist unit is unavailable or would cause delays, the system switches to conventional hardware thread execution, accepting slower speed in exchange for reduced completion time due to no queuing. When assist units are available and ready, the system switches to assist unit execution for faster speed. This parameter change resolves the contradiction by optimizing for the right metric at the right time.
Data Source
AI summary
Methods, apparatuses, and systems that allow a microprocessor to optimally select an assist unit (co-processor) to reduce completion times for completing processing requests to execute functions. The methods, apparatuses, and systems include assist unit hardware, assist unit management software, or a combination of the two to optimally select the assist unit for completing a specific processing request. In optimally selecting an assist unit, the methods, apparatuses, and systems calculate estimated times for completing the processing request with conventional means and with assist units. The times are then compared to determine the fastest time for completing a specific processing request.


