Apple อนุมัติไดรเวอร์ที่ทำให้ใช้ Nvidia eGPU บน Arm Mac ได้
(theverge.com)- ไดรเวอร์นี้พัฒนาโดย Tiny Corp ไม่ใช่ Nvidia และสามารถใช้งานได้ด้วยการอนุมัติการลงนามจาก Apple โดยไม่ต้องปิด System Integrity Protection (SIP)
- ต้อง คอมไพล์ไดรเวอร์ผ่าน Docker โดยตรง และไม่ได้เป็นการใช้งานแบบเสียบแล้วใช้ได้ทันทีทั่วไป
- ตามเอกสารของ Tiny Corp ไดรเวอร์นี้ถูกออกแบบมาสำหรับการรัน โมเดลภาษาขนาดใหญ่ (LLM)
- Tiny Corp ระบุว่า “Apple อนุมัติไดรเวอร์ทั้งสำหรับ AMD และ Nvidia แล้ว”
- ทำให้ผู้ใช้ Arm Mac มีโอกาสสามารถใช้ external GPU (eGPU) ได้
- การที่ Apple อนุญาตให้ลงนามไดรเวอร์ GPU จากนักพัฒนาภายนอกถือเป็น กรณีที่พบได้ยากมาก
- ก่อนหน้านี้ หากไม่ปิด SIP ก็ไม่สามารถติดตั้งไดรเวอร์ไม่เป็นทางการได้
- การอนุมัติครั้งนี้ช่วยเพิ่มทั้ง ความสามารถในการขยายฮาร์ดแวร์ของ Mac และ ศักยภาพในการใช้งานเวิร์กโหลดด้าน AI และแมชชีนเลิร์นนิง
1 ความคิดเห็น
ความเห็นจาก Hacker News
ในทางเทคนิคเป็นโปรเจ็กต์ที่ดี แต่ในความเป็นจริง แทบไม่มีประโยชน์ใน 90% ของกรณีใช้งาน
ถ้าอยากรัน LLM ด้วย GPU ของ NVidia ซื้อพีซีมือสองน่าจะดีกว่า และถ้าอยากได้ Mac ที่มี VRAM เยอะ ก็ซื้อ Mac ไปเลย
วิธีที่เสนอมานี้ถูกจำกัดโดยพอร์ต Thunderbolt และ การเข้าถึงเครื่องมือกับไลบรารี ของ NVidia ก็ยังไม่ดีนัก
ขณะเดียวกันมันก็กลายเป็น ระบบที่ไม่สมบูรณ์ ซึ่งเสี่ยงพังได้จากการอัปเดต macOS
แบบนี้จะไม่มีข้อจำกัดด้านแบนด์วิดท์ของ Thunderbolt และยังใช้คำสั่ง CUDA เดิมได้
แต่ต้องอยู่ใน LAN เดียวกัน และมี overhead ราว 4%
จึงไม่เหมาะเวลาเดินทาง และปัญหาไดรเวอร์ของ macOS ก็ยังไม่ได้รับการแก้ไข
ผมทำงานที่ GPU Go ดังนั้นอาจมี อคติ เข้าข้างแนวทางนี้
ตอนนี้เริ่มทำได้แล้ว ดังนั้นอนาคตสถานการณ์อาจเปลี่ยนไป
ไม่เข้าใจว่าทำไมถึงลิงก์ไปที่พร็อกซีแทนต้นฉบับ
ทั้งที่ต้นฉบับคือ บัญชี tinygrad บน X
เท่าที่ผมเข้าใจ มันทำงานได้ เฉพาะกับ Tinygrad เท่านั้น
ใช้ CUDA หรือ Vulkan จาก PyTorch ไม่ได้
เอกสารที่เกี่ยวข้องอยู่ใน เอกสาร TinyGPU
Apple ปฏิเสธการเซ็นไดรเวอร์ eGPU ของ NVidia มาตั้งแต่ปี 2018 แต่ผมไม่เข้าใจว่าเขา หลบเลี่ยงการตรวจสอบจากหน่วยงานกำกับดูแล ได้อย่างไร
หลัง macOS 10.13 แม้จะไม่อนุญาตไดรเวอร์กราฟิกจากบุคคลที่สาม แต่ไดรเวอร์ที่ไม่ใช่กราฟิกอาจยังทำได้
แทบไม่มี Mac ที่เสียบ GPU ของ NVidia ได้อยู่แล้ว และตอนนี้ก็ไม่มีสล็อตเลย
พออ่านไกด์กับสคริปต์แล้ว ดูเหมือนโครงสร้างจะเป็นการ ส่ง GPU เข้าไปใน Linux VM แล้วค่อยส่งกลับมาที่ Mac
เหมือนทีม TinyGrad จะได้รับการอนุมัติให้ใช้วิธีนี้
ผมอาจเข้าใจบทบาทของ Docker ผิดก็ได้
GPU ของ NVidia ใช้ Docker เพื่อให้ตรงกับคอมไพล์ไทม์ target ส่วน AMD บน macOS จะบิลด์ LLVM ของตัวเองแล้วใช้งาน
ทั้ง Apple และ NVidia ต่างก็พลาดโอกาสดี ๆ ไปเพราะ ท่าทีแบบปิดกั้น
ถ้ารัน NVidia บนฮาร์ดแวร์ Mac ด้วย Linux ได้ ผลลัพธ์น่าจะดีกว่านี้มาก
เรากลายเป็น ผู้บริโภคที่สูญเสียการควบคุม แม้จะซื้อสินค้าไปแล้ว
ทุกอย่างก็ใช้งานได้ดีนอกระบบนิเวศนั้น
ตอนนี้มีคนใช้โน้ตบุ๊ก ARM และวาง GPU ไว้ระยะไกลมากขึ้น
เพราะฉะนั้น UX ที่ทำให้ GPU ติดตามเวิร์กโฟลว์ในเครื่อง ได้จึงสำคัญขึ้น
พวกเราที่ GPUGo / TensorFusion กำลังศึกษาวิธีผสานโฟลว์การพัฒนาแบบ local-first เข้ากับการเข้าถึง GPU ระยะไกล
ผมสงสัยว่าผู้คนต้องการประสบการณ์ที่ให้ความรู้สึกเหมือน eGPU จริง ๆ หรือแค่อยากใช้ การประมวลผลระยะไกลที่มีแรงเสียดทานต่ำที่สุด
ตอนนี้ผมกำลังเดินทาง แต่ที่บ้านมี RTX 5090 อยู่ เลยอยากลองทดสอบด้วยตัวนี้
กำลังดู เอกสาร TinyGPU อยู่ และหวังว่าจะใช้กับ M4 Mac Mini ได้
น่าจะต้องมี ATX PSU สำหรับจ่ายไฟ แล้ว tinygrad จะใช้ทำ LLM inference ได้ไหม?
ใช้ PSU มาตรฐาน แต่ Mac Mini ไม่มี occulink เลยติดข้อจำกัดด้านแบนด์วิดท์ของ USB-C
ถ้าไดรเวอร์ Intel Arc เสถียรขึ้น ชุด GPU ราคาประหยัด ก็น่าจะน่าสนุก
Intel Arc Pro B70 (32GB VRAM) ราคา 1,000 ดอลลาร์ ส่วน Mac Mini ราว 500 ดอลลาร์
ถ้าความเร็ว interconnect ไม่พอ การสลับเลเยอร์ อาจกลายเป็นคอขวดได้
เป็นสถานการณ์ประชดประชันแบบมีเงินแต่ไม่มีเวลาใช้
น่าสนใจ แต่รัน CUDA หรือ
nvidia-smiไม่ได้ถ้ามีชั้นความเข้ากันได้ของ CUDA ก็คงดี แต่แค่ inference และ training รันได้ด้วยไลบรารีของตัวเองก็น่าประทับใจมากแล้ว
ถ้า Mac รองรับไดรเวอร์ NVidia ได้ ยอดขาย Mac Pro น่าจะเพิ่มขึ้น
ตลอดช่วงกว่า 10 ปีที่ผ่านมา Apple ไม่อนุญาตไดรเวอร์ GPU ของ NVidia
GPU อายุ 7 ปีอย่าง VEGA64 หรือ RTX1080Ti ก็ยังมี ความเร็วในการประมวลผลโทเค็น เร็วกว่า Apple Silicon ส่วนใหญ่
โปรเซสเซอร์ MAX/Ultra ของ Apple เหมาะกับโมเดลขนาดใหญ่ แต่ก็ยังไม่เร็วเท่า RTX5090