Job Scheduling on Distributed Accelerators via Predictive Simulation
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
In heterogeneous distributed computing networks, scheduling jobs efficiently across diverse computing devices is challenging due to limited historical performance data and device variability, leading to the 'cold start problem, where predicting performance is difficult without sufficient information.
Innovation Solution
A recommendation engine using a graph convolutional neural network (GCN) and collaborative filtering system generates performance metrics for each computing device type, allowing for informed scheduling decisions even with sparse historical data, by simulating job execution and providing recommendations on resource allocation.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If traditional scheduling methods are used on heterogeneous distributed computing networks, then device compatibility is maintained, but scheduling efficiency deteriorates due to the cold start problem and limited historical performance data
Solution Approach 1:
The system performs preliminary performance evaluation by simulating job execution on each computing device type before actual scheduling. This preliminary action generates predicted performance metrics in advance, allowing the scheduler to make informed decisions without relying on sparse historical data, thereby resolving the cold start problem and improving scheduling efficiency
Solution Approach 2:
A recommendation engine acts as an intermediary between the job submission system and the scheduler. This intermediary evaluates computing devices, generates performance predictions, and provides recommendations to the scheduler, enabling efficient scheduling decisions even when historical performance data is limited or unavailable
2Measurement precision
If performance prediction is attempted with sparse historical data, then scheduling decisions can be made, but prediction accuracy deteriorates
Solution Approach 1:
Instead of relying on historical performance data, the system creates simulated copies of job execution by running performance evaluations that mimic actual job performance. These simulations generate synthetic performance data that accurately predicts real-world behavior, achieving high prediction accuracy even when historical data is sparse
Solution Approach 2:
The system performs preliminary performance evaluations that generate accurate predicted performance metrics before scheduling decisions are made. This preliminary action creates a rich set of performance predictions that compensate for the lack of historical data, enabling accurate measurement and informed scheduling
Data Source
Figure 1
Figure 2
Figure 3
AI summary
Methods, systems, and apparatus, including computer programs encoded on computer storage media, for scheduling operations represented as a computational graph on a distributed computing network. A method includes: receiving data representing operations to be executed in order to perform a job on a plurality of hardware accelerators of a plurality of different accelerator types; generating, for the job and from at least the data representing the operations, features that represent a predicted performance for the job on hardware accelerators of the plurality of different accelerator types; generating, from the features, a respective predicted performance metric for the job for each of the plurality of different accelerator types according to a performance objective function; and providing, to a scheduling system, one or more recommendations for scheduling the job on one or more recommended types of hardware accelerators.