← all repositories
horovod/horovod

Distributed training that skips the parameter-server mess

Horovod lets you scale a single-GPU TensorFlow or PyTorch script across hundreds of GPUs by wrapping the optimizer and borrowing MPI-style collectives.

14.7k stars Python ML Frameworks
horovod
Not currently ranked — collecting fresh signals.
star history

What it does

Horovod is a distributed training framework for TensorFlow, Keras, PyTorch, and MXNet. It wraps your existing optimizer to average gradients across workers using allreduce or allgather, and handles the boilerplate of multi-process initialization and GPU pinning. The pitch is that you write for one GPU, then scale to hundreds without touching the model code again.

The interesting bit

Instead of rebuilding around parameter servers, Horovod leans on old-school MPI concepts—rank, broadcast, allreduce—which turn out to be a surprisingly good fit for gradient synchronization. It also bundles Facebook’s Gloo backend, so you can dodge an MPI installation entirely if you prefer.

Key highlights

  • Supports TensorFlow, Keras, PyTorch, and Apache MXNet from a single API
  • Benchmarked at 512 GPUs across 128 servers with claimed 90% scaling efficiency on ResNet-101 and Inception V3
  • Same script runs on one GPU, multiple GPUs, or multiple hosts with no code changes
  • Can use either MPI or the built-in Gloo collective communications library
  • Plays nice with mpi4py and runs on Kubernetes, Spark, Ray, and HPC clusters

Caveats

  • The README admits that installing MPI and NCCL is “an extra hassle,” though it only needs to happen once per infrastructure team
  • Compiler requirements vary by framework version—TensorFlow 2.10+ needs g++8 or above—so the build matrix can get picky

Verdict

Worth a look if you’re already training in PyTorch or TensorFlow and need to scale past a single node without re-architecting. Probably overkill if you’re still experimenting on a single GPU or running small models that don’t need synchronous distributed training.

Frequently asked

What is horovod/horovod?
Horovod lets you scale a single-GPU TensorFlow or PyTorch script across hundreds of GPUs by wrapping the optimizer and borrowing MPI-style collectives.
Is horovod open source?
Yes — horovod/horovod is an open-source project tracked on heatdrop.
What language is horovod written in?
horovod/horovod is primarily written in Python.
How popular is horovod?
horovod/horovod has 14.7k stars on GitHub.
Where can I find horovod?
horovod/horovod is on GitHub at https://github.com/horovod/horovod.

heatdrop uses Google Analytics to see which pages get read — nothing else. Your call. How we handle data.