<!-- llms-explorer concept facts · https://llms-explorer.com/tree/jaccl-mesh-versus-ring-topology-selection-and-pe/ · pack 2026-10-05 · ~291 tokens -->

# JACCL mesh versus ring topology selection and per-pair device counts

> Already covered: jaccl-ring-all-reduce-wire-partitioning-n-wires.md (selection order in init, MLX_JACCL_RING, is_valid_ring per-pair device count, mesh n_wires as minimum over pairs, MESH_MAX_PEERS 8, RING_MAX_CONNS 4) and distributed-inference-across-macs.md.

Parent: [Mac local LLMs: Clusters, RDMA, exo and ds4](https://llms-explorer.com/tree/mac-local-llms-clusters-rdma-exo-ds4/) · 2 facets · 2 facts · page: https://llms-explorer.com/tree/jaccl-mesh-versus-ring-topology-selection-and-pe/

## Facts

- Already covered: jaccl-ring-all-reduce-wire-partitioning-n-wires.md (selection order in init, MLX_JACCL_RING, is_valid_ring per-pair device count, mesh n_wires as minimum over pairs, MESH_MAX_PEERS 8, RING_MAX_CONNS 4) and distributed-inference-across-macs.md. — source: `asserted`

## Corrections and disagreements

- CONTRADICTS (docs vs source, not stated in existing files): the MLX distributed docs say JACCL supports only fully connected topologies, while jaccl.cpp init falls back to a valid ring. — [source](https://ml-explore.github.io/mlx/build/html/usage/distributed.html)
