Graph Computing Scheduling on Heterogeneous Resources
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Graph computing on heterogeneous platforms faces challenges in balancing energy efficiency and execution speed, as existing systems lack effective mechanisms to allocate tasks across diverse processing resources, leading to suboptimal power consumption and performance.
Innovation Solution
A scheduling engine that computes optimal processing speed values for edge sets based on operating characteristics and energy parameters, allocating tasks to heterogeneous processing resources to minimize energy consumption and execution time, while ensuring parallel processing and balancing execution speed and power usage.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Use of energy by moving object
If graph computing is performed on heterogeneous platforms without effective task allocation, then execution speed may be maintained, but power consumption increases and energy efficiency deteriorates
Solution Approach 1:
The system dynamically changes operating parameters (voltage and frequency) of processing resources based on task characteristics and current system state. The scheduler computes optimal operating points by adjusting these parameters to achieve the best energy-efficiency-to-performance ratio for each specific task allocation decision.
Solution Approach 2:
The task allocation system is dynamic rather than static. It continuously evaluates available processing resources, their current utilization, and energy characteristics to make real-time allocation decisions. The system adapts to changing conditions by re-evaluating and re-allocating tasks as resources become available or change state.
2Loss of energy
If tasks are allocated to optimize energy efficiency, then power consumption is reduced, but execution time may increase
Solution Approach 1:
The system adjusts operating parameters (voltage/frequency) to find optimal points that balance energy consumption and execution time. By changing these parameters dynamically, the system can select operating modes that achieve acceptable energy efficiency without excessive execution time penalties.
Solution Approach 2:
The system applies partial optimization rather than maximizing energy efficiency to the extreme. It selects allocation decisions that provide sufficient energy savings while maintaining acceptable performance levels, avoiding over-optimization that would excessively prolong execution time.
3Productivity
If heterogeneous processing resources are used without coordinated scheduling, then processing capacity is utilized, but task allocation efficiency deteriorates leading to suboptimal performance
Solution Approach 1:
The scheduler acts as an intermediary layer between the heterogeneous processing resources and the tasks. It abstracts the complexity of diverse resource characteristics by providing a unified allocation interface, evaluating resource states, and making intelligent routing decisions that simplify the overall system management.
Solution Approach 2:
The system segments the heterogeneous platform into distinct processing resource categories or groups based on their characteristics. This segmentation allows the scheduler to apply different allocation strategies to different resource types, managing complexity through structured organization rather than treating all resources uniformly.
Data Source
AI summary
An apparatus and method are provided for scheduling graph computing on heterogeneous platforms based on energy efficiency. A scheduling engine receives an edge set that represents a portion of a graph comprising vertices with at least one edge connecting two or more of the vertices. The scheduling engine obtains an operating characteristic for each processing resource of a plurality of heterogeneous processing resources. The scheduling engine computes, based on the operating characteristics and an energy parameter, a set of processing speed values for the edge set, each speed value corresponding to a combination of the edge set and a different processing resource of the plurality of heterogeneous processing resources. The scheduling engine identifies an optimal processing speed value from the set of computed speed values for the edge set.


