Intelligent Data Shuffling for Distributed ML Training

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Conventional methods for training neural networks with large datasets face performance issues due to the limitations of global shuffling across multiple nodes in distributed machine learning, leading to worse convergence and increased training time, especially as data sizes grow exponentially and compute requirements scale.

Innovation Solution

Implementing a system where the training dataset is divided into shards and further allocated into working sets across multiple nodes, allowing for simultaneous backpropagation and gradient aggregation, while shuffling occurs in the background across nodes, thereby reducing communication overhead and improving performance.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If global shuffling is performed across multiple nodes in distributed machine learning, then data convergence improves, but network bandwidth consumption increases and training time increases

Engineering Contradiction:
Improveconvergence qualityVSAvoidnetwork bandwidth consumption
Core Design Contradiction:
ReliabilityVSLoss of energy

Solution Approach 1:

The training dataset is divided into multiple shards that are distributed across different nodes. Each node processes a subset of shards, performing local shuffling within its assigned data portion rather than globally shuffling all data across the network. This segmentation reduces network bandwidth consumption while maintaining acceptable convergence properties through localized data mixing.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

Data shards are pre-divided and distributed to nodes before training begins. The shuffling operation is performed preliminarily on each node's local data portion, eliminating the need for continuous global shuffling during training. This preliminary local shuffling reduces ongoing network communication requirements while preserving convergence benefits.

Inventive Principle:
Principle #10Preliminary action

2Adaptability or versatility

If global shuffling is performed across multiple nodes, then data diversity for training improves, but training time increases due to communication overhead

Engineering Contradiction:
Improvedata diversityVSAvoidtraining time
Core Design Contradiction:
Adaptability or versatilityVSLoss of time

Solution Approach 1:

The training process is segmented into parallel operations: data shuffling occurs in the background independently of gradient computation and aggregation. Each node performs local shuffling on its assigned shards while simultaneously participating in gradient computations. This segmentation eliminates the sequential dependency where shuffling must complete before training, thereby reducing total training time while maintaining data diversity through background shuffling operations.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The shuffling operation continues in the background throughout the training process rather than being performed as a separate preliminary step. This continuous background shuffling ensures data diversity is maintained throughout training without interrupting the gradient computation and aggregation workflow, thereby maintaining adaptability while reducing overall training time.

Inventive Principle:
Principle #20Continuity of useful action

3Loss of energy

If data is shuffled locally on each node, then network bandwidth consumption decreases, but convergence quality deteriorates

Engineering Contradiction:
Improvenetwork bandwidth consumptionVSAvoidconvergence quality
Core Design Contradiction:
Loss of energyVSReliability

Solution Approach 1:

Data shards are pre-divided and distributed to nodes with shuffle-ready configurations before training begins. This preliminary preparation enables each node to perform effective local shuffling on its assigned data portions without requiring subsequent global coordination, thereby maintaining convergence quality through well-prepared local data mixing while minimizing network bandwidth consumption during the actual training process.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system dynamically balances between local and global shuffling operations based on available network resources and training progress. Nodes perform local shuffling on their assigned shards, and the system periodically coordinates data exchange to introduce global data diversity when beneficial. This dynamic approach maintains convergence quality by adapting the shuffling strategy to current system conditions while keeping network bandwidth consumption manageable.

Inventive Principle:
Principle #15Dynamics

Data Source

PatentUS12050998B2Systems and methods for intelligent data shuffling for high-performance distributed machine learning training
Publication Date: 2024.07.30 HEWLETT PACKARD ENTERPRISE DEV LP
  • US12050998B2 patent drawing
  • US12050998B2 patent drawing
  • US12050998B2 patent drawing

AI summary

Systems and methods are provided for data shuffling for distributed machine learning training, including each training node in the network receiving a shard of training data, wherein the training data set is divided into shards having data items. Each data item is assigned to a working set such that each of the working set includes data items from multiple shards. The training nodes perform training using the data items of a first working set that are in each node's shard. Upon completion of the training using the data items of the first working set, the training nodes performing training using the data items of a second working set that are in their shards; and while the training nodes are performing training on their respective subsets of shards of the second working set, the nodes randomly shuffling data items in the first working set to create a shuffled first working set.