Dynamic Scaling of Execution Platforms for ML Training Bottlenecks

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

The process of training machine learning models with large datasets is often hindered by long training durations due to the need for synchronization of model parameters across multiple machines, which can lead to network bottlenecks and inefficient resource utilization, especially when the amount of data transferred changes significantly during the training phase.

Innovation Solution

Implementing a dynamic scaling technique that adjusts the number and type of execution platforms used for training based on factors such as synchronization data volume, convergence rate, and resource utilization, allowing for changes in the partitioning of the training data and deployment of additional or fewer platforms as needed throughout the training process.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If the training data set is partitioned among several machines for parallel analysis, then the training duration is reduced, but network synchronization bottlenecks increase due to data transfer requirements

Engineering Contradiction:
Improvetraining durationVSAvoidnetwork synchronization complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The system dynamically adjusts the number of execution platforms and data partitioning strategy during the training phase based on monitored synchronization data volumes. When synchronization data volume exceeds thresholds, the system repartitions training data or reduces the number of platforms, transforming the static parallelization approach into a dynamic one that adapts to changing network conditions throughout training.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The system changes key parameters including the number of execution platforms, data partitioning configuration, and synchronization frequency based on monitored performance metrics. These parameter changes allow the system to optimize the trade-off between parallel processing benefits and network synchronization overhead at different stages of training.

Inventive Principle:
Principle #35Parameter changes

2Power

If more execution platforms are used for parallel training, then processing capacity increases, but network bandwidth requirements increase leading to bottlenecks

Engineering Contradiction:
Improveprocessing capacityVSAvoidnetwork bandwidth consumption
Core Design Contradiction:
PowerVSUse of energy by moving object

Solution Approach 1:

The system implements dynamic scaling of execution platforms during training, adjusting the number of active platforms based on real-time monitoring of synchronization data volumes and network bandwidth consumption. This allows the system to maximize processing capacity when network conditions permit while reducing bandwidth consumption when synchronization overhead becomes problematic.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The system uses aggressive data partitioning that initially creates excessive synchronization requirements, then dynamically reduces the number of platforms or adjusts partitioning to eliminate the excess. This approach allows the system to explore high-processing-capacity configurations temporarily and then retreat to more sustainable configurations when network bottlenecks appear.

Inventive Principle:
Principle #16Partial or excessive action

3Productivity

If the number of execution platforms is increased, then training throughput improves, but resource utilization efficiency decreases due to synchronization overhead

Engineering Contradiction:
Improvetraining throughputVSAvoidresource utilization efficiency
Core Design Contradiction:
ProductivityVSLoss of energy

Solution Approach 1:

The system continuously monitors synchronization data volumes, network bandwidth usage, and training progress, using this feedback to dynamically adjust the number of execution platforms and data partitioning strategy. This closed-loop control ensures that the system operates at optimal throughput while minimizing synchronization overhead and maximizing resource utilization efficiency throughout the training phase.

Inventive Principle:
Principle #23Feedback

Solution Approach 2:

The training system automatically monitors its own performance metrics and makes self-adjustments to the execution platform configuration without external intervention. The system serves itself by detecting when synchronization overhead is reducing overall efficiency and autonomously adjusting the parallelization degree to restore optimal resource utilization.

Inventive Principle:
Principle #25Self-service

Data Source

PatentUS11715033B2Dynamically scaled training fleets for machine learning
Publication Date: 2023.08.01 AMAZON TECH INC
  • US11715033B2 patent drawing
  • US11715033B2 patent drawing
  • US11715033B2 patent drawing

AI summary

A first set of execution platforms is deployed for a set of operations of a training phase of a machine learning model. Prior to the completion of the training phase, a triggering condition for deployment of a different set of execution platforms is detected. The different set of execution platforms is deployed for a subsequent set of training phase operations.