คลัสเตอร์ AI ด้วย Mac

เมื่อโมเดลใหญ่เกินกว่า Mac เครื่องเดียว คุณต่อหลายเครื่องเข้าด้วยกันได้ ตั้งแต่ macOS 26.2 Mac ใช้หน่วยความจำร่วมกันได้โดยตรงผ่าน Thunderbolt 5 นี่คือการทำงานของคลัสเตอร์ Mac สิ่งที่ได้ และเครือข่าย Mac อยู่ตรงไหน

อัปเดต

สรุปสั้น ๆ

  • macOS 26.2 เพิ่ม RDMA ผ่าน Thunderbolt 5 ให้ Mac อ่านหน่วยความจำของกันและกันได้ด้วยความหน่วงต่ำมาก
  • ทั้งเฟรมเวิร์ก MLX ของ Apple และโปรเจกต์โอเพนซอร์ส exo แบ่งโมเดลหนึ่งตัวไปรันบน Mac หลายเครื่องได้
  • Mac Studio M3 Ultra สี่เครื่องรันโมเดลหนึ่งล้านล้านพารามิเตอร์ได้ราว 30 โทเค็นต่อวินาทีในการทดสอบอิสระ
  • คลัสเตอร์คือ Mac ไม่กี่เครื่องบนโต๊ะเดียว MLX Network เชื่อม Mac จากทุกที่

1อะไรเปลี่ยนไป: RDMA ผ่าน Thunderbolt 5

ตั้งแต่ macOS 26.2 Mac แลกเปลี่ยนหน่วยความจำกันได้โดยตรงผ่าน Thunderbolt 5 ด้วย RDMA ซึ่ง Apple ระบุว่าเป็นฟีเจอร์สำหรับอินเฟอเรนซ์ AI แบบกระจายด้วย MLX (Apple) MLX เปิดให้ใช้ผ่านแบ็กเอนด์ JACCL ควบคู่กับ MPI และ TCP ring (เอกสาร MLX)

สิ่งที่ได้คือความหน่วงที่ลดลง ตามข้อมูลของนักพัฒนา MLX นั้น RDMA ลดความหน่วงในการเข้าถึงหน่วยความจำจากราว 300 µs เหลือต่ำกว่า 50 µs ส่วนในการทดสอบของ Jeff Geerling นั้น Mac Studio M3 Ultra สี่เครื่องรัน Kimi K2 Thinking ขนาด 1 ล้านล้านพารามิเตอร์ได้ราว 30 โทเค็นต่อวินาที (Jeff Geerling)

2สองวิธีแบ่งโมเดล

Pipeline parallelism ให้ Mac แต่ละเครื่องรับเลเยอร์ที่ต่อเนื่องกันชุดหนึ่ง วิธีนี้ทำให้รันโมเดลที่ใหญ่กว่า Mac เครื่องใดเครื่องหนึ่งได้ และประมวลผลพรอมต์ยาว ๆ เป็นช่วง ๆ แบบขนานได้ แต่ความเร็วการสร้างข้อความพอ ๆ กับ Mac เครื่องเดียว

Tensor parallelism แบ่งทุกเลเยอร์ไปยัง Mac หลายเครื่อง วิธีนี้เพิ่มความเร็วการสร้างข้อความด้วย แต่ Mac ต้องแลกข้อมูลกันหลายครั้งต่อโทเค็น จึงต้องอาศัยความหน่วงต่ำของ RDMA Apple เผยแพร่ผลการวัดทั้งสองแบบบนคลัสเตอร์ Mac Studio (Apple Machine Learning Research) และระบุว่า Mac Studio สี่เครื่องรันอินเฟอเรนซ์ได้เร็วกว่าเครื่องเดียวสูงสุดสามเท่า (Apple)

3การสร้างคลัสเตอร์

  1. เลือก Mac ที่มี Thunderbolt 5 สำหรับ RDMA: M4 Pro, M4 Max, M3 Ultra และชิป Pro, Max และ Ultra รุ่นหลังจากนั้น Mac ที่สเปกเหมือนกันทำให้แบ่งงานง่ายที่สุด
  2. ต่อด้วยสาย Thunderbolt 5 โดยต่อตรงทีละคู่ สายสองเส้นระหว่างคู่เดียวกันจะเพิ่มแบนด์วิดท์ของลิงก์เป็นสองเท่า
  3. อัปเดต Mac ทุกเครื่องเป็น macOS 26.2 ขึ้นไป แล้วเปิด RDMA ตามเอกสารของ Apple
  4. รันโมเดลด้วย MLX distributed (mlx.launch) หรือ exo ซึ่งค้นหา Mac และแบ่งโมเดลให้อัตโนมัติ

exo รายงานว่า tensor parallelism เร็วขึ้นสูงสุด 1.8 เท่าบนสองเครื่อง และ 3.2 เท่าบนสี่เครื่อง ควรวัดกับระบบของคุณเอง เพราะผลที่ได้ขึ้นกับโมเดลมาก

4จากคลัสเตอร์สู่เครือข่าย

คลัสเตอร์ต่อ Mac ไม่กี่เครื่องบนโต๊ะเดียวด้วยสายเคเบิล MLX Network เชื่อม Mac จากทุกที่ผ่านอินเทอร์เน็ต เพราะความหน่วงของอินเทอร์เน็ตสูงเกินกว่าจะแบ่งโมเดลหนึ่งตัวไปยัง Mac ของคนแปลกหน้า เครือข่ายจึงวางแต่ละงานทั้งงานไว้บน Mac เครื่องเดียว หรือบนพ็อดของ Mac ที่ต่อสายกันไว้แล้ว โดยพิจารณาจากหน่วยความจำและแบนด์วิดท์

ถ้าคุณมี Mac Studio หรือ Mac mini หลายเครื่อง MLX Node ให้เครือข่ายยืมเวลาว่างของเครื่องเหล่านั้นและได้รับโทเค็น MLX และที่นั่งเฉพาะ Ultra ที่รันบน Mac ชิป Ultra ได้รับมากที่สุด ดู Mac ทุกเครื่องในเครือข่ายได้บน MLX World

5คำถาม

ต่อ Mac mini เป็นคลัสเตอร์ AI ได้ไหม
ได้ Mac mini ที่ใช้ชิป M4 Pro หรือ M5 Pro มี Thunderbolt 5 และเมื่อใช้ macOS 26.2 ขึ้นไปจะใช้ RDMA ได้ ส่วนรุ่น M4 และ M6 มี Thunderbolt 4 ทั้ง MLX distributed และ exo แบ่งโมเดลไปยังเครื่องเหล่านี้ได้
คลัสเตอร์ Mac ทำให้โมเดลเร็วขึ้นไหม
ขึ้นกับวิธีแบ่งโมเดล pipeline parallelism ช่วยให้รันโมเดลใหญ่ขึ้นได้เป็นหลัก ส่วน tensor parallelism ผ่าน RDMA ยังเพิ่มความเร็วการสร้างข้อความด้วย Apple ระบุว่าเร็วขึ้นสูงสุดสามเท่าบน Mac Studio สี่เครื่อง
จำเป็นต้องมี Thunderbolt 5 ไหม
สำหรับ RDMA จำเป็น Mac รุ่นเก่ายังต่อกันได้ผ่าน Thunderbolt หรือ Ethernet ด้วย TCP แต่ความหน่วงสูงกว่ามาก การแบ่งแบบ pipeline จึงได้ผลดีกว่าแบบ tensor

แหล่งที่มา

  1. Appledeveloper.apple.com
  2. เอกสาร MLXml-explore.github.io
  3. Jeff Geerlingjeffgeerling.com
  4. Apple Machine Learning Researchmachinelearning.apple.com
  5. Appleapple.com
  6. exogithub.com

อ่านต่อ

คลัสเตอร์ AI ด้วย Mac mini และ Mac Studio ผ่าน Thunderbolt 5