Priority-Aware Resource Reassignment Across Active Cores And IP Blocks
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing systems-on-chip (SoC) resource allocation methods fail to account for the varying priority levels of software threads and devices, leading to inefficient utilization of shared resources.
Innovation Solution
A dynamic reassignment mechanism that prioritizes system resources based on thread and device priority levels, using flexible mapping schemes and resource management circuits to optimize resource allocation among active cores and IP blocks.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Ease of manufacture
If system resources are shared equally between all devices, then resource allocation is simple and fair, but resource utilization efficiency deteriorates because it does not account for varying priority levels of threads and devices
Solution Approach 1:
The patent implements dynamic resource allocation where the resource management circuitry continuously monitors thread activity and priority levels, adjusting resource assignment in real-time. Active high-priority threads receive more resources while inactive or low-priority threads release resources back to the pool, making the allocation dynamic rather than static or equal
Solution Approach 2:
The system changes the allocation parameters based on thread priority levels and activity states. The resource management circuitry uses priority values and activity detection to modify resource assignment parameters, transitioning from equal distribution to priority-based distribution without changing the physical resource structure
2Productivity
If system resources are allocated according to priority levels, then resource utilization efficiency improves, but system complexity increases due to the need for priority management and dynamic reassignment mechanisms
Solution Approach 1:
The resource management circuitry automatically detects thread activity states and priority levels, then autonomously performs resource reassignment without requiring complex external control. The system serves itself by monitoring its own resource usage and dynamically adjusting allocations based on detected activity, reducing the need for complex manual or software-based management mechanisms
Solution Approach 2:
The system implements feedback mechanisms where the resource management circuitry continuously monitors thread activity and resource usage, then uses this feedback to adjust resource allocation. The detection of active/inactive threads provides feedback that triggers automatic reassignment, creating a closed-loop system that adapts to changing conditions without complex external intervention
3Stability of the object's composition
If resources are statically assigned to threads, then resource allocation is predictable and stable, but adaptability deteriorates when thread activity changes
Solution Approach 1:
The patent transforms static resource allocation into a dynamic system where resource assignment changes in response to thread activity. The resource management circuitry detects when threads become inactive and automatically reassigns their resources to active threads, maintaining stability for active threads while adapting to changes in thread activity patterns
Solution Approach 2:
The system ensures continuous useful action by constantly monitoring thread activity and maintaining optimal resource allocation. When threads become inactive, their resources are immediately reassign ed to active threads, ensuring that resources continuously serve productive purposes without interruption or waste
Data Source
AI summary
An apparatus and method for dynamic reassignment of resources. For example, an example method comprises: executing a plurality of threads on a plurality of cores and/or functional circuit blocks, the cores and/or functional circuit blocks coupled to an interconnect; associating, by resource management circuitry, a class of service (CLOS) level of a plurality of CLOS levels with each thread of the plurality of threads, the resource management circuitry to detect one or more inactive CLOS levels corresponding to inactive threads; remapping, by the resource management circuitry, active threads from corresponding active CLOS levels to the one or more inactive CLOS levels, the remapping to provide the active threads with a larger allocation of resources than provided at the corresponding active CLOS levels; and allocating any remaining resources to the active threads in accordance with the respective active CLOS levels of the active threads.


