Priority-Driven Random Replacement for Shared Storage Entries
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
In multi-threaded data processing systems, existing replacement schemes for storage units do not adequately prioritize high priority program threads, leading to potential performance degradation when lower priority threads evict data from high priority threads.
Innovation Solution
A priority-driven random replacement policy that maintains a record to identify entries associated with high and lower priority threads, randomly generating candidate entries and preferentially selecting victims from lower priority threads to evict, thereby increasing the likelihood of retaining high priority thread data.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Ease of operation
If a random replacement scheme is used to select victim entries in a storage unit, then the implementation is simple and fair, but high priority program threads may have their data evicted by lower priority threads, degrading performance
Solution Approach 1:
The patent applies local quality by differentiating the treatment of entries based on their association with different priority threads. A record structure tracks whether each entry is associated with a high priority or lower priority thread, and the replacement circuitry uses this information to apply different selection criteria. This allows the system to maintain simple operation while ensuring high priority thread data is preferentially retained, resolving the contradiction between simplicity and reliability.
2Reliability
If a replacement scheme prioritizes high priority threads, then data retention for high priority threads improves, but the complexity of the replacement circuitry increases
Solution Approach 1:
The patent applies preliminary action by pre-establishing a record structure that tracks the priority association of each entry before replacement is needed. This record is updated whenever entries are written or accessed, so that when replacement is required, the information is already available. This approach improves data retention for high priority threads while minimizing the added complexity, as the tracking mechanism is maintained continuously rather than being activated only during replacement events.
3Productivity
If all entries are treated equally in the storage unit, then the storage unit is simple to manage, but lower priority threads can evict data from high priority threads, reducing overall system throughput
Solution Approach 1:
The patent applies parameter changes by modifying the replacement criteria based on the priority parameter of the threads associated with entries. Instead of treating all entries equally, the system changes the selection parameter to favor entries associated with high priority threads. The record structure provides this priority information, and the replacement circuitry uses it to adjust the victim selection process. This resolves the contradiction by improving throughput through parameter-based differentiation while keeping the overall management structure relatively simple.
Data Source
AI summary
A data processing apparatus and method are provided for implementing a replacement scheme for entries of a storage unit. The data processing apparatus has processing circuitry for executing multiple program threads including at least one high priority program thread and at least one lower priority program thread. A storage unit is then shared between the multiple program threads and has multiple entries for storing information for reference by the processing circuitry when executing the program threads. A record is maintained identifying for each entry whether the information stored in that entry is associated with a high priority program thread or a lower priority program thread. Replacement circuitry is then responsive to a predetermined event in order to select a victim entry whose stored information is to be replaced. To achieve this, the replacement circuitry performs a candidate generation operation to identify a plurality of randomly selected candidate entries, and then references the record in order to preferentially select as the victim entry a candidate entry whose stored information is associated with a lower priority program thread. This improves the performance of the high priority program thread(s) by preferentially evicting from the storage unit entries associated with lower priority program threads.


