Accelerate documentation
Learning how to incorporate π€ Accelerate features quickly!
Getting started
Tutorials
OverviewMigrating to π€ AccelerateLaunching distributed codeLaunching distributed training from Jupyter Notebooks
How-To Guides
Start Here!Example ZooHow perform inference on large models with small resourcesPerforming gradient accumulationSaving and loading training statesUsing experiment trackersHow to avoid CUDA Out-of-MemoryHow to use Apple Silicon M1 GPUsHow to use DeepSpeedHow to use Fully Sharded Data ParallelismHow to use Megatron-LMHow to use π€ Accelerate with SageMaker
Concepts and fundamentals
Comparing performance across distributed setupsExecuting and deferring jobsGradient synchronizationTPU best practices
Reference
You are viewing v0.17.1 version. A newer version v1.13.0 is available.
Learning how to incorporate π€ Accelerate features quickly!
Please use the interactive tool below to help you get started with learning about a particular feature of π€ Accelerate and how to utilize it! It will provide you with a code diff, an explaination towards what is going on, as well as provide you with some useful links to explore more within the documentation!
Most code examples start from the following python code before integrating π€ Accelerate in some way:
for batch in dataloader:
optimizer.zero_grad()
inputs, targets = batch
inputs = inputs.to(device)
targets = targets.to(device)
outputs = model(inputs)
loss = loss_function(outputs, targets)
loss.backward()
optimizer.step()
scheduler.step()