Accelerate documentation

Huấn luyện PyTorch tăng tốc trên Mac

You are viewing main version, which requires installation from source. If you'd like regular pip install, checkout the latest stable version (v1.15.0).
Hugging Face's logo
Join the Hugging Face community

and get access to the augmented documentation experience

to get started

Huấn luyện PyTorch tăng tốc trên Mac

Với bản phát hành PyTorch v1.12, các nhà phát triển và nhà nghiên cứu có thể tận dụng GPU Apple silicon để huấn luyện mô hình nhanh hơn đáng kể. Điều này mở ra khả năng thực hiện các quy trình học máy như thử nghiệm nguyên mẫu và tinh chỉnh cục bộ, ngay trên Mac. Metal Performance Shaders (MPS) của Apple với vai trò là backend cho PyTorch cho phép điều này và có thể được sử dụng thông qua thiết bị "mps" mới. Điều này sẽ ánh xạ các đồ thị tính toán và các nguyên thủy lên khung đồ thị MPS và các kernel được tối ưu hóa do MPS cung cấp. Để biết thêm thông tin, vui lòng tham khảo tài liệu chính thức Introducing Accelerated PyTorch Training on Mac và MPS BACKEND.

Lợi ích của việc Huấn luyện và Suy luận sử dụng Chip Apple Silicon

  1. Cho phép người dùng huấn luyện các mạng lớn hơn hoặc kích thước lô lớn hơn trên máy cục bộ
  2. Giảm độ trễ truy xuất dữ liệu và cung cấp cho GPU khả năng truy cập trực tiếp vào bộ nhớ lưu trữ đầy đủ nhờ kiến trúc bộ nhớ thống nhất. Do đó, cải thiện hiệu suất đầu-cuối.
  3. Giảm chi phí liên quan đến phát triển dựa trên đám mây hoặc nhu cầu về các GPU cục bộ bổ sung.

Điều kiện tiên quyết: Để cài đặt torch với hỗ trợ mps, vui lòng làm theo bài viết medium hay này GPU-Acceleration Comes to PyTorch on M1 Macs.

Cách hoạt động ngay khi cài đặt

Tính năng này được bật mặc định trên các máy MacOs có GPU Apple Silicon hỗ trợ MPS. Để tắt tính năng này, hãy truyền cờ --cpu vào lệnh accelerate launch hoặc trả lời câu hỏi tương ứng khi điền bảng khảo sát accelerate config.

Bạn có thể chạy trực tiếp script sau để kiểm tra trên các máy Apple Silicon hỗ trợ MPS:

accelerate launch /examples/cv_example.py --data_dir images

Một số lưu ý cần biết

  1. Các cấu hình phân tán gloo và nccl không hoạt động với thiết bị mps. Điều này có nghĩa là hiện tại chỉ có thể sử dụng một GPU duy nhất của loại thiết bị mps.

Cuối cùng, xin hãy nhớ rằng Accelerate chỉ tích hợp backend MPS, do đó nếu bạn gặp bất kỳ vấn đề hoặc câu hỏi nào liên quan đến việc sử dụng backend MPS, vui lòng tạo một issue trên GitHub của PyTorch.

Update on GitHub