Compute Task State Encapsulation for Out-of-Order Scheduling
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Conventional compute task execution in multiple processor systems lack a system and method for encapsulating task state to enable out-of-order scheduling and execution, limiting concurrent processing efficiency.
Innovation Solution
A system and method for encapsulating compute task state using task metadata (TMD) structures that store initialization, scheduling, and execution parameters, allowing out-of-order scheduling and concurrent execution of tasks based on priority levels.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If data is processed in the order it appears in the stream, then processing correctness is maintained, but processing throughput is reduced due to inability to execute concurrent tasks
Solution Approach 1:
The patent segments the compute task state into discrete task metadata structures that can be independently managed and scheduled. Each task is encapsulated with its own state information, allowing the scheduler to treat them as independent units that can be reordered and executed concurrently when dependencies permit, thereby improving throughput without compromising correctness
Solution Approach 2:
The patent implements dynamic scheduling where the execution order of tasks is not fixed but can be adjusted based on resource availability and task dependencies. The scheduler dynamically determines execution order by examining task metadata and dependencies, enabling out-of-order execution of independent tasks while maintaining correctness for dependent tasks
2Productivity
If multiple processing tasks are executed concurrently, then processing efficiency is improved, but system complexity increases due to scheduling and state management requirements
Solution Approach 1:
The patent introduces task metadata structures as intermediary objects that mediate between the task definition and the execution engine. These metadata structures encapsulate all necessary state information, dependencies, and control parameters, allowing the scheduler to manage concurrent tasks without direct complex interactions between tasks themselves, thereby reducing overall system complexity
Solution Approach 2:
The patent uses parameter-based scheduling where tasks are characterized by specific parameters stored in their metadata (such as priority, dependencies, resource requirements). The scheduler makes scheduling decisions based on these parameters rather than complex task-specific logic, simplifying the scheduling mechanism while enabling efficient concurrent execution
3Adaptability or versatility
If task state is encapsulated in metadata structures, then out-of-order scheduling is enabled, but memory allocation complexity increases
Solution Approach 1:
The patent designs a universal task metadata structure that can represent different types of compute tasks with a common format. This unified structure handles various task states, dependencies, and execution parameters in a consistent manner, allowing the memory management system to allocate and manage task metadata using a single standardized process rather than multiple specialized allocation schemes
Data Source
AI summary
One embodiment of the present invention sets forth a technique for encapsulating compute task state that enables out-of-order scheduling and execution of the compute tasks. The scheduling circuitry organizes the compute tasks into groups based on priority levels. The compute tasks may then be selected for execution using different scheduling schemes. Each group is maintained as a linked list of pointers to compute tasks that are encoded as task metadata (TMD) stored in memory. A TMD encapsulates the state and parameters needed to initialize, schedule, and execute a compute task.


