
MLX mlx.launch 3 步跑通分布式多节点启动保姆级指南【免费下载链接】mlxMLX: An array framework for Apple silicon项目地址: https://gitcode.com/GitHub_Trending/ml/mlxMLX 是苹果芯片Apple silicon专属的数组框架mlx.launch是它自带的多节点启动工具一条命令把脚本分发到多台 Mac 上并行执行自动合并各家输出任一进程崩溃就收尾其余进程。它适合想在多台 Mac 上做分布式训练或推理的开发者。照本文操作你最终能跨 2 台以上 Mac 跑通一个分布式all_sum任务并拿到一份可复用的主机文件。准备自检开跑前先逐项确认缺一不可✅ 已安装 MLXpip install mlx✅ 至少 2 台 Apple 芯片 Mac同局域网或雷电互联✅ 待跑脚本在所有节点同一路径存在✅ Python 解释器路径一致用mlx.launch --print-python查看✅ SSH 免密已配好ssh 主机名直接进、不提示密码SSH 还没配好的先补这一步对每台机器各执行一次ssh-keygen -t ed25519 ssh-copy-id 主机名核心流程1. 先在本机跑通目的先确认本地环境没问题再上多机。写个最小脚本demo.pyimport mlx.core as mx world mx.distributed.init() print(world.rank(), mx.distributed.all_sum(mx.ones(10)))本机起 2 个进程mlx.launch -n 2 demo.py应看到 rank 0 和 rank 1 各打印一行每行元素值为 2两个 1 相加。2. 自动生成主机文件目的免手写 JSON避免格式和 IP 对应出错。官方工具会扫网段直接生成mlx.distributed_config --over ethernet --hosts mac1,mac2 --output-hostfile hosts.json它自动 ssh 到每台机器取 en0 的 IP写出 hosts.json形如[{ssh: mac1, ips: [192.168.1.11]}, {ssh: mac2, ips: [192.168.1.12]}]3. 多节点一键启动目的把脚本同时拉到所有节点并行执行无需手写启动逻辑。mlx.launch --hostfile hosts.json demo.py它会逐台 ssh 进、起进程、合并各家输出任一进程失败即终止其余不残留孤儿进程。快速排障现象原因处理反复要密码 / 连不上SSH 免密没配ssh-copy-id 主机名分发公钥某节点 No such file脚本路径不一致保证所有节点同一路径ring 报 requires IPs--hosts传了主机名用--hostfile提供 IP卡住 / 超时端口占用或防火墙换--starting-port并放行端口排障时加--verbose看详细日志ring 后端会自动打开MLX_RING_VERBOSEnccl 后端自动打开NCCL_DEBUGINFO。进阶玩法换通信后端雷电 5 的 Mac 用--backend jaccl走低延迟 RDMA延迟比 ring 低一个量级CUDA 环境用--backend nccl跨平台通用选--backend mpi配--mpi-arg透传 mpirun 参数。多机跑推理时还可用--env给各节点注入统一环境变量。多节点把大模型拆开推理时正是这类张量并行拓扑在节点间搬运权重与激活mlx.launch负责把它们拉起并通信。MLX 把「多台 Mac 当一台用」的复杂度封装进了mlx.launch与mlx.distributed_config。按上面三步配好 SSH 免密、生成 hostfile、多机启动分布式任务即可稳定拉起。更多细节见 docs/src/usage/launching_distributed.rst 与 docs/src/usage/distributed.rst。【免费下载链接】mlxMLX: An array framework for Apple silicon项目地址: https://gitcode.com/GitHub_Trending/ml/mlx创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考