Accelerate documentation

Entraînement PyTorch accéléré sur 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

Entraînement PyTorch accéléré sur Mac

Avec la sortie de PyTorch v1.12, les développeurs et les chercheurs peuvent tirer parti des GPU Apple silicon pour un entraînement de modèles nettement plus rapide. Cela permet d’exécuter des flux de travail de machine learning, comme le prototypage et le fine-tuning, localement, directement sur Mac. Les Metal Performance Shaders (MPS) d’Apple, en tant que backend pour PyTorch, rendent cela possible et peuvent être utilisés via le nouvel appareil "mps". Cela mappe les graphes de calcul et les primitives sur le framework MPS Graph et les noyaux optimisés fournis par MPS. Pour plus d’informations, veuillez consulter les documents officiels Introducing Accelerated PyTorch Training on Mac et MPS BACKEND.

Avantages de l’entraînement et de l’inférence sur des puces Apple Silicon

  1. Permet aux utilisateurs d'entraîner des réseaux plus grands ou des tailles de lot plus importantes en local
  2. Réduit la latence de récupération des données et offre au GPU un accès direct à l’ensemble du magasin mémoire grâce à l’architecture de mémoire unifiée. Améliore ainsi les performances de bout en bout.
  3. Réduit les coûts liés au développement basé sur le cloud ou le besoin de GPU locaux supplémentaires.

Prérequis : Pour installer torch avec la prise en charge de mps, veuillez suivre cet excellent article medium GPU-Acceleration Comes to PyTorch on M1 Macs.

Fonctionnement par défaut

Il est activé par défaut sur les machines MacOs équipées de GPU Apple Silicon avec MPS activé. Pour le désactiver, passez le drapeau --cpu à la commande accelerate launch ou répondez à la question correspondante lors du questionnaire accelerate config.

Vous pouvez exécuter directement le script suivant pour le tester sur des machines Apple Silicon compatibles MPS :

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

Quelques points de vigilance

  1. Les configurations distribuées gloo et nccl ne fonctionnent pas avec le dispositif mps. Cela signifie qu'actuellement, seul un GPU unique de type de dispositif mps peut être utilisé.

Enfin, n’oubliez pas que Accelerate intègre uniquement le backend MPS. Par conséquent, si vous rencontrez des problèmes ou avez des questions concernant l’utilisation du backend MPS, veuillez ouvrir un ticket sur GitHub PyTorch.

Update on GitHub