4 điểm bởi GN⁺ 17 ngày trước | 1 bình luận | Chia sẻ qua WhatsApp
  • Driver này do Tiny Corp, không phải Nvidia, phát triển và có thể sử dụng mà không cần vô hiệu hóa System Integrity Protection (SIP) nhờ được Apple phê duyệt chữ ký
  • Driver phải được biên dịch trực tiếp qua Docker, không phải kiểu cắm là chạy thông thường
  • Theo tài liệu của Tiny Corp, driver này được thiết kế để chạy mô hình ngôn ngữ lớn (LLM)
  • Tiny Corp cho biết “Apple đã phê duyệt cả driver cho AMD và Nvidia
  • Nhờ đó, người dùng Mac Arm có thêm khả năng tận dụng GPU ngoài (eGPU)
  • Việc Apple cho phép ký driver GPU của nhà phát triển bên ngoài được xem là trường hợp rất hiếm
  • Trước đây, nếu không tắt SIP thì không thể cài driver không chính thức
  • Lần phê duyệt này tiếp tục tăng cường khả năng mở rộng của phần cứng Macmức độ phù hợp cho các workload AI và machine learning

1 bình luận

 
Ý kiến trên Hacker News
  • Về mặt kỹ thuật thì đây là một dự án hay, nhưng trên thực tế gần như vô dụng trong 90% trường hợp
    Nếu muốn chạy LLM bằng GPU NVidia thì mua một PC cũ sẽ tốt hơn, còn nếu muốn một chiếc Mac có nhiều VRAM thì cứ mua Mac luôn
    Cách được đề xuất bị giới hạn GPU do cổng Thunderbolt, và khả năng tiếp cận các công cụ và thư viện của NVidia cũng kém
    Đổi lại, nó trở thành một hệ thống không hoàn chỉnh có nguy cơ bị hỏng sau các bản cập nhật macOS

    • Một cách khác là mount qua mạng GPU NVidia nằm trên một máy khác trong cùng LAN
      Làm vậy sẽ không bị giới hạn băng thông Thunderbolt và vẫn có thể dùng nguyên các lệnh gọi CUDA
      Tuy nhiên, phải ở cùng một mạng LAN và có khoảng 4% overhead
      Khó dùng khi đi công tác, và vấn đề driver trên macOS vẫn chưa được giải quyết
      Tôi làm việc tại GPU Go, nên có thể thiên vị với cách tiếp cận này
    • Việc NVidia thiếu công cụ hỗ trợ phần lớn là do từ trước tới nay không thể dùng phần cứng này trên macOS
      Giờ đã làm được rồi, nên tình hình sau này có thể sẽ thay đổi
    • Tôi đã nhầm eGPU là GPU ảo, nhưng thực ra nó có nghĩa là GPU gắn ngoài
  • Tôi không hiểu vì sao lại dẫn bằng link proxy thay vì link gốc
    Link gốc là tài khoản tinygrad trên X

    • Có lẽ là vì bức tường đăng nhập. X giờ có nhiều hạn chế kiểu “phải đăng ký mới xem được bình luận”, và chất lượng trang đã đi xuống
    • Dạo này có vẻ X thường xuyên là nguồn gốc ban đầu
  • Theo cách tôi hiểu thì cái này chỉ hoạt động riêng cho Tinygrad
    Không thể dùng CUDA hay Vulkan trong PyTorch
    Tài liệu liên quan có ở tài liệu TinyGPU

  • Apple đã từ chối ký driver eGPU NVidia từ sau năm 2018, mà tôi không hiểu họ đã né được sự giám sát của cơ quan quản lý như thế nào

    • Tôi muốn biết liệu có bằng chứng nào cho thấy NVidia thực sự đã cố làm việc đó hay không
      Từ sau macOS 10.13 thì driver đồ họa bên thứ ba không còn được cho phép, nhưng có thể driver không phải đồ họa thì vẫn được
    • Có khi là chính phủ không quan tâm
      Gần như không có Mac nào cắm được GPU NVidia, còn bây giờ thì hoàn toàn không có khe cắm nữa
    • Apple không có vị thế độc quyền ở bất kỳ thị trường nào
    • Tình huống này giống việc Google từng chặn ứng dụng khách YouTube cho Windows Phone
    • Chỉ cần tắt SIP là được thôi, đúng không?
  • Đọc hướng dẫn và script thì có vẻ GPU được chuyển qua cho Linux VM rồi trả lại cho Mac
    Có vẻ như nhóm TinyGrad đã được phê duyệt cách này
    Cũng có thể tôi đã hiểu sai vai trò của Docker

    • Nếu xem tài liệu TinyGPUmã trên GitHub thì
      GPU NVidia dùng Docker để khớp mục tiêu biên dịch, còn AMD thì build LLVM riêng trên macOS để sử dụng
  • Cả Apple lẫn NVidia đều đang bỏ lỡ một kết quả tốt vì thái độ khép kín
    Sẽ tốt hơn nhiều nếu có thể chạy NVidia trên phần cứng Mac bằng Linux
    Chúng ta trở thành những người tiêu dùng mất quyền kiểm soát ngay cả sau khi đã mua sản phẩm

    • Vì thế nên tôi đơn giản là không mua sản phẩm Apple
      Mọi thứ vẫn chạy ổn cả ở ngoài hệ sinh thái đó
  • Ngày càng có nhiều người dùng laptop ARM nhưng đặt GPU ở xa
    Vì vậy, UX để GPU có thể đi cùng workflow cục bộ ngày càng quan trọng
    Chúng tôi ở GPUGo / TensorFusion đang nghiên cứu cách kết hợp luồng phát triển ưu tiên cục bộ với khả năng truy cập GPU từ xa
    Tôi tò mò không biết mọi người thực sự muốn thứ gì đó giống eGPU, hay chỉ muốn dùng tính toán từ xa với ma sát tối thiểu

    • Nhưng nếu xuất hình ảnh từ GPU mà có độ trễ mạng dù chỉ 100ms thì cũng đã là vấn đề
  • Tôi đang đi du lịch nhưng có một chiếc RTX 5090 ở nhà nên muốn thử với nó
    Tôi đang tham khảo tài liệu TinyGPU và hy vọng nó sẽ chạy trên M4 Mac Mini
    Có vẻ sẽ cần một bộ nguồn ATX để cấp điện, nhưng liệu tinygrad có làm được suy luận LLM không?

    • Có thể mua một vỏ GPU giá khoảng 100 USD trên AliExpress
      Nó dùng PSU tiêu chuẩn, nhưng Mac Mini không có occulink nên sẽ bị giới hạn bởi băng thông USB-C
      Khi driver Intel Arc ổn định hơn, một cấu hình GPU giá rẻ cũng có thể khá thú vị
      Intel Arc Pro B70 (32GB VRAM) có giá 1000 USD, còn Mac Mini khoảng 500 USD
    • Tôi tự hỏi VRAM nhanh của GPU có thể bù đắp được bao nhiêu cho VRAM chậm của Mac
      Nếu tốc độ interconnect không đủ, việc chuyển lớp có thể trở thành nút thắt cổ chai
    • Tôi cũng để nguyên chiếc 5090 chưa bóc hộp nên cuối cùng đã trả lại
      Một tình huống trớ trêu khi có tiền nhưng lại không có thời gian để dùng
  • Thú vị đấy, nhưng không thể chạy CUDA hay nvidia-smi

    • Dù vậy cũng không quá bất ngờ vì cái này dựa trên thư viện ML của công ty khác, không phải của NVidia
      Sẽ rất hay nếu có một lớp tương thích CUDA, nhưng việc suy luận và huấn luyện chạy được trên thư viện riêng cũng đã khá ấn tượng
  • Nếu Mac hỗ trợ driver NVidia thì doanh số Mac Pro hẳn đã tăng lên

    • Việc Apple và NVidia khôi phục quan hệ chính thức là một chuyện lớn
      Hơn 10 năm qua Apple không cho phép driver GPU NVidia
      Các GPU đã 7 năm tuổi (ví dụ: VEGA64, RTX1080Ti) vẫn có tốc độ xử lý token nhanh hơn phần lớn Apple Silicon
      Bộ xử lý MAX/Ultra của Apple phù hợp với mô hình lớn, nhưng không nhanh bằng RTX5090