Chiplet Workload Scheduling With Dependency-Aware Out-of-Order Execution
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current autonomous driving systems face challenges in achieving deterministic inference operations, making it difficult to certify and provide Automotive Safety Integrity Levels (ASIL) ratings due to non-deterministic execution of perception, object detection, and motion planning tasks.
Innovation Solution
A computing system with a shared memory and reservation table that enables out-of-order execution of workloads, where sensor data input chiplets store data and generate identifiers, and workload processing chiplets monitor dependencies to execute tasks based on availability, facilitating deterministic and parallel execution of autonomous driving tasks.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Speed
If workloads are executed in natural order as data becomes available, then implementation simplicity is maintained, but execution speed and power efficiency decrease due to idle waiting periods
Solution Approach 1:
The system dynamically adjusts workload execution order based on real-time data availability and dependency resolution status. The execution engine monitors the reservation table and reorders workload execution dynamically, transitioning from static natural-order execution to dynamic out-of-order execution to eliminate idle waiting periods while maintaining correctness through dependency tracking.
Solution Approach 2:
The reservation table serves as an intermediary data structure that mediates between data production and workload execution. It stores workload descriptors with dependency information and provides a mechanism for the execution engine to determine readiness, enabling out-of-order execution without direct complex inter-workload coordination.
2Reliability
If deterministic execution order is enforced, then ASIL certification is achieved, but productivity decreases due to inability to parallelize independent workloads
Solution Approach 1:
The system segments workloads into independent units with explicit dependency declarations. Each workload is treated as a discrete entity in the reservation table, allowing the execution engine to identify and execute independent workloads in any order while maintaining deterministic behavior for dependent workloads. This segmentation enables parallel execution of independent tasks while preserving certification requirements.
Solution Approach 2:
The system changes the execution parameter from fixed sequential order to flexible order based on dependency resolution. By introducing a readiness parameter in the reservation table that tracks whether all dependencies are satisfied, the system allows workloads to execute as soon as their dependencies are met, achieving both determinism and maximum parallelization throughput.
3Manufacturing precision
If all dependencies are resolved before execution, then correctness is ensured, but loss of time occurs due to waiting for complete dependency resolution
Solution Approach 1:
The system performs preliminary registration of workloads and their dependencies in the reservation table before execution begins. This preliminary action allows the execution engine to proactively identify and execute workloads whose dependencies are already resolved, eliminating waiting time while ensuring correctness through pre-established dependency tracking.
Solution Approach 2:
The reservation table provides continuous feedback to the execution engine about workload readiness status. As dependencies are resolved, the readiness state updates automatically, providing real-time feedback that enables the engine to immediately schedule executable workloads without waiting for complete dependency chains, thus reducing idle time while maintaining correctness.
Data Source
AI summary
A computing system can include a sensor data input chiplet to (i) obtain sensor data from a sensor system, and (ii) store the sensor data in a cache. One or more workload processing chiplets can perform out-of-order execution on workloads corresponding to the sensor data stored in the cache, where respective workloads comprise sets of dependencies. The one or more workload processing chiplets perform out-of-order execution on the workloads by dynamically determining whether one or more dependencies exists for the respective workload, and when no data dependencies exist for the respective workload, executing the respective workload.


