mlx 0.32.0 JACCL patch inventory
Parent: Mac local LLMs: MLX kernels, numerics and internals · Published reference · snapshot 2026-10-05
↓ Facts as markdownall context files
The "0.32.0 JACCL patch inventory" is the list of JACCL, launcher and Metal-synchronisation changes that a user of PyPI `mlx==0.32.0` has, lacks, or must carry as a fork patch.
These notes link each claim to its source. A source may be a research report hosted on this site rather than the primary document. A published reference means the content is available; it does not certify independent review or accuracy.Read the editorial policy and follow the sources before relying on a claim.
Facts
- The "0.32.0 JACCL patch inventory" is the list of JACCL, launcher and Metal-synchronisation changes that a user of PyPI `mlx==0.32.0` has, lacks, or must carry as a fork patch. [source]
- In 0.32.0: PR 3459 "Add barrier to JACCL", PR 3451 "[jaccl] Fix race on local_staging in MeshImpl::all_reduce", PR 3654 "Fix multi-wire recv prefill deadlock in jaccl ring backend", PR 3523 "Catch error in CommandBuffer and poison the events", and PR 3783 "Quote hostname in mlx.launch ssh commands". [source]
- Already in earlier releases (so also in 0.32.0): PR 3412 "Jaccl refactor" with "JACCL is now a standalone lib" and PR 3418 "Fix jaccl init bug" in v0.31.2; PR 3174 "JACCL mesh bandwidth improvements" in v0.31.0; "Much faster bandwidth with JACCL on macOS >= 26.3" (PR 3094) in v0.30.6. [source]
- In 0.32.1: PR 3899 "Making JACCL coordinator optional", PR 3900 "Refactor the JACCL ring and add threads for the multiple rings", PR 4005 docs "Do not pass MLX_METAL_FAST_SYNCH=1 by default", PR 4026 (crash when reporting partial rings in `mlx.distributed_config`), PR 4027 (unique rank per host in `Hostfile.from_list`), PR 4002 (`mlx.launch --python` flag forwarded), PR 3675 (state corruption when a primitive throws during eval). [source]
- In 0.32.2: PR 4284 "Check malformed jaccl hostfile that miss rdma in pairs" and PR 4338 "Raise cpu stream errors from synchronize". [source]
- In 0.32.3: PR 4443 "Fix jaccl ring all_gather: direction 1 slice was not mirrored" and PR 4552 "[BUG][Metal] Deadlock in fence". [source]
- Not found in any release note from v0.30.4 to v0.32.3: PR 3152 (check `ibv_wc.status`), PR 4530 (JACCL liveness and progress timeout), PR 3468 (GID fallback), PR 3742 (propagate CPU errors to events), PR 4060 (ring peer loss) and PR 4191 (report when no usable GID). [source]
- The exo fork commit that said PyPI 0.32.0 has #3451 and #3654 is confirmed by the release notes. [source]
- The JACCL changes arrive in three groups: a refactor and speed work in 0.30.6 to 0.31.2, correctness fixes in 0.32.0, and ring, launcher and hostfile hygiene in 0.32.1 to 0.32.3. [source]
- 0.32.0 has no JACCL peer-loss handling and no completion-status check: a dead peer or a failed work request still hangs or corrupts silently on 0.32.0 to 0.32.3 (see jaccl-silent-hang-on-peer-loss.md). [source]
- 0.32.0 to 0.32.2 lack the Metal fence deadlock fix of PR 4552, which first appears in 0.32.3. [source]
- The ring `all_gather` fix (PR 4443) means 0.32.0 to 0.32.2 ring all_gather results can be wrong in direction 1; the notes do not give the trigger. [source]
- The `/releases` listing page truncates the 0.32.0 entry; its tag page `/releases/tag/v0.32.0` is the complete list. [source]
- None found between sources. The exo dossier's "patch stack removed reboots" attribution to PR 3451 is already disputed in jaccl-meshimpl-all-reduce-race-fix-mlx-3451.md. [source]
- Whether PR 4191 reached a release, since it merged on 2026-08-12 but is not in the v0.32.1 notes. [source]
- Whether the release-note titles omit PRs that touch JACCL under a generic title. [source]
- MLX v0.32.0 (2026-07-07) includes JACCL PRs 3459 (barrier), 3451 (all_reduce staging race) and 3654 (multi-wire ring recv deadlock). [source]
- MLX v0.32.0 also includes PR 3523 (poison events on command-buffer error) and PR 3783 (quote hostname in `mlx.launch` ssh commands). [source]
- The JACCL refactor (PR 3412) and init fix (PR 3418) shipped in v0.31.2, not in 0.32.0. [source]
- MLX v0.32.1 (2026-08-17) includes PRs 3899 (optional JACCL coordinator), 3900 (ring refactor with threads per ring), 4005 (docs: do not pass `MLX_METAL_FAST_SYNCH=1` by default), 4026, 4027 and 4002. [source]
- MLX v0.32.2 includes PR 4284 (reject a JACCL hostfile with unpaired rdma entries). [source]
- MLX v0.32.3 (2026-09-29) includes PR 4443 (ring `all_gather` direction-1 slice fix) and PR 4552 (Metal fence deadlock). [source]
- None of PR 3152, 4530, 3468, 3742, 4060 or 4191 appears in the release notes for v0.30.4 to v0.32.3. [source]
- The MLX `/releases` listing page truncates the v0.32.0 entry; the tag page is complete. [source]
Children
- No children recorded.