Hardware · Clusters · Tools

MLX distributed

by Apple (ml-explore) · MIT · 29,079 GitHub stars · Active · mlx v0.32.4, mlx-lm v0.32.2, Oct 2026

Apple's own machine-learning framework can spread one model across several Macs with its launcher, and is what EXO builds on; you set it up from the command line.

Go to MLX distributed Source code

At a glance

Best for
Mac owners comfortable with a terminal who want the most direct, lowest-overhead way to run one model on several Macs, especially Mac Studios on Thunderbolt 5.
Runs on
Built for Apple silicon. Linux builds exist for NVIDIA cards (with NCCL between machines) and for processors only; Macs and Linux machines aren't mixed.
How it splits a model
Tensor or pipeline, per model: about two dozen model families support tensor split and about fifteen pipeline.
Connections
A TCP ring over Ethernet or Thunderbolt, or JACCL: RDMA over Thunderbolt 5 (macOS 26.2+), which Apple calls an order of magnitude lower in latency and needed for tensor split.
How devices join
Manual: a host file and passwordless ssh between the Macs (mlx.distributed_config can write it).
Models
MLX models from Hugging Face.
API
OpenAI compatible (mlx_lm.server), plus chat and generate commands.
Rules
Same Python and paths on every Mac. With tensor split each Mac needs every weight file; pipeline mode downloads only its own share.

Get started

macOS

pip install mlx mlx-lm

Linux

pip install mlx[cuda13] mlx-lm

Then:

mlx.distributed_config --hosts mac1,mac2 --over thunderbolt --backend jaccl --auto-setup --output hosts.json
mlx.launch --backend jaccl --hostfile hosts.json -- python -m mlx_lm chat --model mlx-community/<model>

Published speeds

Measured by the project or its users, for one person chatting. Our own estimates for any set of devices are in the cluster builder.

Limits to know

Open issues worth reading:

Sources:

All clustering tools

Estimates come from published hardware specs and our open formulas, not from running the model on your machine. Real speed varies with runtime, drivers and settings. Numbers marked “Measured” come from a linked benchmark.

Was this page helpful?