liveBook · Manning

Data parallel

Data parallelism is a parallel-computing technique that applies the same computation concurrently to separate portions of data.

How 8 Manning books explain it

Designing Deep Learning Systems: A guide for software engineers

A distributed training strategy that replicates a model across computing devices, partitions data batches among them, and combines their parameter updates.

How it is used
Accelerates training of large datasets by distributing minibatches across replicated model workers.
How deep it goes
Explains synchronous execution, gradient aggregation, scaling limits, recovery, and framework configuration without model-theory detail.
Examples
Demonstrates three-GPU synchronization plus PyTorch DDP, TensorFlow MultiWorkerMirroredStrategy, and Horovod code patterns.
What you can do after
Operate/configure it through PyTorch, TensorFlow, or Horovod worker settings and resilient training-service practices.

Read how Designing Deep Learning Systems: A guide for software engineers explains data parallel →

LLMs in Production

Data parallelism is a parallel-computing technique that processes separate portions of data concurrently with multiple copies of a model or pipeline.

How it is used
Uses replicated model copies to process separate data portions concurrently in distributed LLM training and inference workflows.
How deep it goes
Defines the workload split and names PyTorch configuration, but stops short of explaining synchronization or communication internals.
Examples
Demonstrates Ray task submission by comparing ten sequential calls with ten remote calls and collected results.
What you can do after
Apply it via PyTorch DistributedDataParallel or Ray when distributing compatible workloads across devices or cluster nodes.

Read how LLMs in Production explains data parallel →

Deep Learning with Python, Third Edition

A distributed-training method where each device holds a full replica of the model and processes different sub-batches in parallel.

How it is used
Scales training across devices by processing different portions of a batch on full model replicas.
How deep it goes
Explains replicas and batch splitting with numbers, then gives Keras setup and performance caveats; does not detail update-merging mechanics.
Examples
Uses a batch of 128 split across two GPUs and Keras DataParallel calls for automatic or selected-device setup.
What you can do after
Apply it via Keras DataParallel with JAX, selecting devices when needed and checking that each GPU receives enough data.

Read how Deep Learning with Python, Third Edition explains data parallel →

Deep Learning with R, Third Edition

Data parallelism is a distributed-training technique that replicates a model across devices and processes different data subsets on those devices.

How it is used
Scales training across devices by processing different data subsets with copies of a model.
How deep it goes
Explains batch splitting, replica results, and Keras setup, but does not detail multi-GPU machine provisioning.
Examples
Works through a batch of 128 split across two GPUs and shows Keras DataParallel configuration.
What you can do after
Apply it via Keras DataParallel with JAX, optionally selecting devices and checking whether the batch is large enough.

Read how Deep Learning with R, Third Edition explains data parallel →

Deep Learning with PyTorch, Second Edition

A training strategy that replicates a model across devices while splitting data among them.

How it is used
Splits training data across devices while keeping a model replica on each device.
How deep it goes
Works through gradient reduction and an optimizer step, then delegates optimized synchronization to DDP.
Examples
Uses a manual all-reduce training loop, DDP model wrapping, and a DistributedSampler data loader.
What you can do after
Apply it via PyTorch DDP and DistributedSampler to synchronize model replicas while assigning processes separate data subsets.

Read how Deep Learning with PyTorch, Second Edition explains data parallel →

Sutskever's List

Data parallelism is a training technique that replicates a model across devices, splits batches among them, and synchronizes parameter updates.

How it is used
Scales training across GPUs by distributing batches while keeping model replicas synchronized.
How deep it goes
Explains batch division, gradient synchronization, measured speedups, communication overhead, and memory limits; does not detail the custom all-reduce routine.
Examples
Uses Deep Speech 2’s 8-to-16-GPU runs, batch sizes, and custom all-reduce performance as a concrete case.
What you can do after
Evaluate/understand when data parallelism speeds GPU training and when communication or full-model memory limits constrain it.

Read how Sutskever's List explains data parallel →

Deep Learning with JAX

A distributed training strategy that splits a batch across devices, replicates parameters, and aggregates gradients before updating.

How it is used
Uses multiple devices to train one neural network by processing separate data chunks with synchronized model copies.
How deep it goes
Explains distribution, reshaping, gradient aggregation, and edge cases, while deferring model-parallel implementation to later mechanisms.
Examples
Demonstrates an SPMD MNIST classifier using eight-device tensors, pmap updates, and per-device loss values.
What you can do after
Apply it via JAX pmap by reshaping batches, aggregating gradients, and completing a multi-device training loop.

Read how Deep Learning with JAX explains data parallel →

Latency

Data parallelism is the execution of identical operations simultaneously on separate portions of a dataset.

How it is used
Uses identical operations on separate data portions to reduce application latency.
How deep it goes
Works through array partitioning, partial sums, workload balance, and SIMD widths without supplying implementation code.
Examples
Illustrates parallel array summation with 1,000 elements and locality-aware partitioning with contiguous matrix blocks.
What you can do after
Evaluate/understand when dividing data into balanced, independent chunks may reduce latency.

Read how Latency explains data parallel →

Related concepts

These guides are generated from the text of Manning books by Manning's knowledge graph and link to the sections they draw on. The full books are available on liveBook and at manning.com.