Pseudo-random hardware resource allocation via index list pointer
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing resource allocation systems in computing devices face challenges in achieving even allocation of hardware resources across multiple hardware elements, particularly when the number of elements is not a power of two or changes dynamically, and are susceptible to specific request patterns leading to uneven utilization.
Innovation Solution
A pseudo-random allocation method using a resource list and index list, where each hardware element is identified by multiple entries in the lists, ensuring fair distribution regardless of the number of elements and resisting specific request patterns, implemented through a pseudo-random allocation module that iteratively selects hardware elements for resource requests.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If resources are allocated sequentially or round-robin from a pool of hardware elements, then the allocation process is simple to implement, but a single hardware element can become over-utilized and limit overall system performance when the number of elements is not a power of two or changes dynamically
Solution Approach 1:
The patent implements dynamic resource allocation by using a pseudo-random number generator that continuously changes the selection pattern, allowing the system to adapt to varying workload patterns and prevent any single hardware element from becoming a bottleneck, while maintaining simplicity through software-based implementation
Solution Approach 2:
The system changes the allocation parameter from fixed sequential/round-robin patterns to variable pseudo-random patterns, where the selection probability and sequence are dynamically adjusted based on the pseudo-random number generator state, achieving better load distribution without increasing hardware complexity
2Reliability
If multiple criteria are used to define even usage (such as capacity and bandwidth for memory), then the allocation fairness is improved, but the system complexity increases significantly
Solution Approach 1:
The patent introduces a pseudo-random number generator as an intermediary mechanism that indirectly addresses multiple allocation criteria simultaneously, avoiding the need for complex real-time measurement and control of each individual criterion while still achieving fair distribution across capacity, bandwidth, and other resource dimensions
Solution Approach 2:
The allocation system uses self-service through pseudo-random selection where the system automatically distributes resources without requiring external measurement or control mechanisms for each criterion, allowing the randomization process to naturally balance multiple factors including capacity and bandwidth usage
Data Source
AI summary
Methods and apparatus for pseudo-random hardware resource allocation through a plurality of hardware elements. In an embodiment, resource list entries are configured to each identify one hardware element of the plurality of hardware elements. Index list entries are configured to each identify one resource list entry. An index list pointer is set to identify a first index list entry of the plurality of index list entries, and hardware resources are requested from a first hardware element of the plurality of hardware elements by identifying, using the index list pointer, the first index list entry; identifying, using the first index list entry, a first resource list entry; selecting the hardware element identified by the first resource list entry as the first hardware element; and sending a request for hardware resources to the first hardware element.


