Distributed Neural Network Inferencing via Contiguous Data Partitioning

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing technologies face challenges in efficiently training and operating neural networks due to high memory and time requirements, and the inability to effectively distribute computer program components and elements across multiple computer systems.

Innovation Solution

The solution involves partitioning neural network training data and activations and distributing them across multiple processors in a distributed system, allowing for parallel training of neural networks. This approach includes using a processor to cause inferencing of contiguous portions of information to be distributed between processing cores based on the location of these portions within the information relative to terminating portions.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If neural network training is performed using traditional centralized methods, then computational operations can be executed on a single system, but memory requirements and time consumption become excessively high

Engineering Contradiction:
Improvetraining efficiencyVSAvoidmemory requirements
Core Design Contradiction:
ProductivityVSQuantity of substance

Solution Approach 1:

The patent divides the neural network training process into multiple segments that can be executed in parallel across different processors. Training data is partitioned into batches, and computational operations are split into forward propagation and backward propagation phases, allowing simultaneous execution on multiple processing units and reducing per-processor memory requirements.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent transitions from single-system sequential processing to multi-processor parallel processing by adding the dimension of distributed computation. Multiple processors work simultaneously on different portions of the training data or different computational stages, effectively increasing the computational throughput without proportionally increasing individual processor memory requirements.

Inventive Principle:
Principle #17Another dimension (Dimensionality change)

2Loss of time

If computational operations are distributed across multiple processors, then memory and time requirements per processor are reduced, but the complexity of distributing and coordinating program components increases

Engineering Contradiction:
Improvetraining timeVSAvoidsystem coordination complexity
Core Design Contradiction:
Loss of timeVSDevice complexity

Solution Approach 1:

The patent ensures continuous utilization of all processors throughout the training process by maintaining parallel execution of computational operations. Data is continuously fed to multiple processors in batches, and the system coordinates parameter updates and gradient computations without idle processing time, maximizing the efficiency of the distributed architecture.

Inventive Principle:
Principle #20Continuity of useful action

Solution Approach 2:

The patent introduces intermediary components such as parameter servers or centralized coordination mechanisms that manage data distribution and result aggregation between workers. These intermediaries handle the complexity of coordination, allowing individual processors to focus on their computational tasks while the intermediary manages the overall training workflow and synchronizes updates.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Ease of operation

If input data is evenly divided among processors, then workload distribution is simplified, but self-attention calculations become unbalanced due to positional dependencies in the data

Engineering Contradiction:
Improveworkload distribution easeVSAvoidcalculation balance
Core Design Contradiction:
Ease of operationVSProductivity

Solution Approach 1:

The patent applies asymmetric distribution strategies for self-attention calculations where processors are assigned different portions of the attention matrix based on their computational capacity and the positional requirements of the data. This allows the system to maintain balanced workloads while respecting the positional dependencies inherent in self-attention mechanisms, rather than using simple even division.

Inventive Principle:
Principle #4Asymmetry

Data Source

PatentUS20250036975A1Distributed inferencing
Publication Date: 2025.01.30 NVIDIA CORP
  • US20250036975A1 patent drawing
  • US20250036975A1 patent drawing
  • US20250036975A1 patent drawing

AI summary

Apparatuses, systems, and techniques to perform neural networks. In at least one embodiment, a processor is to cause information to be distributed to processing cores. In at least one embodiment, a processor is to cause inferencing of two or more contiguous portions of information to be distributed between two or more respective processing cores based, at least in part, on locations of the two or more contiguous portions within the information relative to one or more terminating portions of the information.