Graphical Program Execution Targets for Distributed Load Balancing
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current graphical programming environments lack efficient methods for distributing graphical programs across multiple execution targets, leading to difficulties in load balancing, communication bandwidth optimization, and component management, especially as application size and complexity increase.
Innovation Solution
A system and method for configuring graphical program portions to execute on specific execution targets, allowing users to specify execution targets through a graphical user interface, configure icons, and connect program portions via wires for distributed execution, enabling dynamic reconfiguration during runtime.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If graphical programs are distributed across multiple execution targets, then load balancing and communication bandwidth optimization are improved, but device complexity and difficulty of managing multiple targets increase
Solution Approach 1:
The patent introduces execution targets as intermediary components that mediate between the graphical program code and the physical hardware devices. Each execution target acts as a container that holds program portions and specifies which device executes them, simplifying the mapping complexity between distributed code and multiple physical devices through a standardized intermediary layer
Solution Approach 2:
The patent segments the graphical program into multiple program portions, each assigned to a specific execution target. This segmentation allows independent management and configuration of different program sections on different devices, enabling load distribution and parallel execution while maintaining organized, modular system structure
2Loss of energy
If graphical programs are distributed across multiple execution targets, then communication bandwidth requirements are reduced, but the difficulty of detecting and measuring execution targets increases
Solution Approach 1:
The patent uses visual indicators (analogous to color changes) to display execution target information in the diagram. Execution targets are visually distinguished and labeled, making it easy to identify which program portions execute on which devices directly from the graphical representation, eliminating the need for complex external tracking or measurement
3Adaptability or versatility
If graphical programs are distributed across multiple execution targets, then application scalability is improved, but ease of operation and configuration becomes more difficult
Solution Approach 1:
The patent allows execution targets to be pre-configured with device information, capabilities, and parameters before program deployment. This preliminary configuration stores execution target details in advance, enabling rapid program distribution and scaling without requiring complex runtime configuration or manual setup when new devices are added to the system
Data Source
AI summary
System and method for distributed execution of a graphical program. First and second icons associated with respective execution targets are displayed on a display. Each icon has an interior and specifies execution of a respective graphical program portion positioned in the interior of the icon on the respective execution target. First and second graphical program portions are respectively displayed in the interiors of the first and second icons, where each graphical program portion comprises a respective one or more interconnected nodes that visually indicate functionality of the graphical program portion. One or more wires connecting the first graphical program portion and the second graphical program portion are display. During execution of the graphical program, the first and second graphical program portions execute respectively on the first and second execution targets, and the first graphical program portion and the second graphical program portion communicate as specified by the one or more wires.


