Conditional Graph Execution Using Simplified Pilot Graphs
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Machine intelligence systems are computationally and energy intensive due to large data structures and complex interlayer relationships, making them difficult to parallelize and inefficient to execute, especially in modern deep learning ANNs.
Innovation Solution
Derive a simplified version of the directed graph through down-sampling or value simplification, apply a pilot input to obtain execution data, and conditionally execute the original graph using this data to reduce computational intensity while maintaining accuracy.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If dynamic graph execution is implemented to handle complex control flow, then processing capability is improved, but system complexity increases
Solution Approach 1:
The patent segments the graph execution process into distinct phases: a simplified initial graph execution phase and a subsequent dynamic graph execution phase. This segmentation allows the system to handle complex control flow requirements while maintaining manageable complexity by breaking down the execution into modular, phase-based operations with clear transitions between them.
2Reliability
If full dynamic graph execution is performed, then accurate control flow handling is improved, but execution time increases
Solution Approach 1:
The patent applies preliminary action by first executing a simplified graph that prepares the system state before the actual dynamic graph execution. This preliminary simplified execution establishes initial conditions and filters out unnecessary operations, allowing the subsequent dynamic execution to focus only on the critical control flow paths, thereby reducing overall execution time while maintaining accuracy.
Solution Approach 2:
The system performs partial dynamic graph execution by selectively executing only the necessary portions of the graph based on the simplified execution results. Instead of always performing complete dynamic graph execution, the system adapts the execution scope to match the actual requirements, reducing unnecessary computational overhead while ensuring control flow accuracy is maintained where needed.
3Adaptability or versatility
If comprehensive graph execution modes are supported, then adaptability is improved, but device complexity increases
Solution Approach 1:
The patent implements dynamic switching between different graph execution modes (simplified vs. dynamic execution) based on the specific requirements of the control flow graph being processed. This dynamic adaptability allows the system to optimize performance for different scenarios without requiring a completely different architecture for each mode, as the same system can transition between execution modes as needed.
Data Source
Figure 1
Figure 2
Figure 3
AI summary
Computer-implemented methods and associated hardware for executing directed graphs are disclosed herein. An example method includes deriving a simplified version of a directed graph, applying a pilot input tensor to the simplified version of the directed graph, and obtaining a collection of execution data during the application of the pilot input tensor to the simplified version of the directed graph. The method also includes applying a live input tensor to the directed graph and conditioning the execution of the directed graph using the collection of execution data. An output tensor is obtained from the conditional execution of the directed graph.