Scriptable Dynamic Load Balancing for Heterogeneous Processors
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Heterogeneous-processing computer systems face challenges in load balancing due to the tradeoff between adaptability and simplicity, as existing dynamic load balancers require significant resources and time for implementation and maintenance, while static load balancers struggle to adapt to new processor types and architectures.
Innovation Solution
A scriptable dynamic load balancing approach is implemented, where a load balancer executes a script with configurable rules to distribute loads among heterogeneous processors based on load and processor characteristics, allowing for adaptable and efficient load distribution without the complexity of traditional dynamic load balancers.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If a dynamic load balancer is used to adapt to new processor types and architectures, then adaptability is improved, but implementation complexity and maintenance resources increase significantly
Solution Approach 1:
The load balancer uses runtime scripts to dynamically determine processor selection and load division strategies, allowing the system to adapt to different processor types and architectures without requiring complex static configuration. The scriptable approach enables the load balancing behavior to be modified and updated easily while maintaining relatively simple system architecture.
2Device complexity
If a static load balancer with hard-coded rules is used, then implementation simplicity is improved, but adaptability to new processor types and architectures deteriorates
Solution Approach 1:
The system combines static load balancer architecture with dynamic scriptable rules, allowing simple implementation while maintaining adaptability through configurable scripts that can be updated at runtime to support new processor types and architectures without requiring system redesign.
Solution Approach 2:
The load balancing behavior is controlled through configurable parameters and scripts that can be modified to adapt to different processor characteristics, load types, and system architectures, enabling a simple base implementation to become adaptable through parameter configuration rather than structural complexity.
3Productivity
If dynamic load balancing with multiple queues is implemented, then load processing efficiency is improved, but system complexity and resource requirements increase
Solution Approach 1:
The system implements dynamic load balancing using scripts that determine load division and processor selection at runtime, achieving improved load processing efficiency through adaptive decision-making while keeping the underlying queue structure and system architecture relatively simple and manageable.
Data Source
AI summary
The described embodiments include a system for executing a load using a first processor and a seond processor in a computer system. During operation, a load balancer executing on the first processor obtains one or more attributes of a load to be executed on the computer system. Next, the load balancer applies a set of configurable rules to the one or more attributes to select a processor from the first and second processors for executing the load. Finally, the system executes the load on the selected processor.


