Glossaire / Comment il vous entend
Neural Engine
Aussi : ANE
Mis à jour le
Définition
Le Neural Engine est la partie d’une puce Apple silicon conçue pour faire tourner efficacement les modèles d’apprentissage automatique, aux côtés du CPU et du GPU. C’est grâce à lui qu’un portable peut faire de la reconnaissance vocale en continu sans chauffer, sans bruit de ventilateur et sans vider la batterie.
Chaque Mac de la série M en possède un. C’est un ensemble de cœurs spécialisés dans le calcul matriciel dont sont faits les réseaux de neurones, et il effectue ces calculs avec une fraction de l’énergie dont un CPU ou un GPU aurait besoin. La reconnaissance vocale est exactement le type de charge régulière et permanente pour lequel le Neural Engine a été conçu : un modèle qui doit suivre l’audio en temps réel, aussi longtemps que vous parlez, sans ralentir le reste de la machine.
Tous les modèles ne s’y prêtent pas. Le Neural Engine a ses propres contraintes de forme et de précision numérique, et un modèle doit être converti pour lui. Ce travail d’ingénierie est l’une des vraies différences entre les outils de dictée locaux qui semblent sans effort et ceux qui font tourner le même modèle sur le GPU et vous chauffent les genoux.
Neural Engine, GPU et CPU
Le CPU peut tout faire tourner, mais c’est le plus lent et le plus gourmand pour les calculs de réseaux de neurones. Le GPU est rapide et polyvalent, et c’est là que tournent la plupart des modèles de langage locaux, via des frameworks comme MLX ou Metal. Le Neural Engine est le plus efficace des trois pour les modèles qui respectent ses contraintes, et les modèles de reconnaissance vocale s’y prêtent bien. Un outil de dictée local bien conçu place chaque modèle là où il tourne le mieux et laisse le CPU à l’app dans laquelle vous tapez.
Pourquoi c’est une exigence
La dictée locale sur un Mac Intel implique de faire tourner le modèle sur un CPU qui n’a pas été conçu pour cela. Ça fonctionne, lentement, et c’est en grande partie pour cela que les outils sur l’appareil exigent au minimum Apple silicon. Sur un M1 ou plus récent, les mêmes modèles tournent en temps réel sans que la machine s’en aperçoive vraiment, et c’est toute la différence entre un outil que vous laissez actif toute la journée et un outil que vous ne lancez que pour les grandes occasions.
Comment vérifier si votre Mac a un Neural Engine
Sur Mac, le Neural Engine est arrivé avec la puce M1. La vraie question est donc de savoir si votre Mac a Apple silicon, et macOS vous le dit dans une seule fenêtre.
- Cliquez sur le menu Apple dans le coin de l’écran.
- Choisissez À propos de ce Mac.
- Lisez la fenêtre qui s’ouvre. Un Mac avec Apple silicon affiche un élément intitulé Puce, suivi du nom de la puce.
- Si vous voyez un élément intitulé Processeur suivi du nom d’un processeur Intel, le Mac est à processeur Intel et n’a pas de Neural Engine.
Quand les Mac ont-ils eu un Neural Engine ?
Le Neural Engine a commencé sur l’iPhone. Apple indique que la première génération est arrivée avec la puce A11 de l’iPhone X en 2017. Il est venu sur l’iPad avec la puce A12 et sur le Mac avec la puce M1.
La liste d’Apple des Mac avec Apple silicon comprend le MacBook Air avec M1 de 2020 et tous les MacBook Air de 2022 ou ultérieurs, le MacBook Pro 13 pouces avec M1 de 2020 et tous les MacBook Pro de 2021 ou ultérieurs, le Mac mini de 2020 ou ultérieur, l’iMac de 2021 ou ultérieur, le Mac Studio de 2022 ou ultérieur et le Mac Pro de 2023. Certains modèles Intel étaient encore vendus ces années-là : vérifiez donc À propos de ce Mac au lieu de vous fier à l’année seule.
Pourquoi certaines apps utilisent-elles le Neural Engine et d’autres non ?
Une app ne parle pas directement au Neural Engine. Elle confie un modèle à Core ML, le framework d’apprentissage automatique d’Apple, et Apple indique que Core ML combine le CPU, le GPU et le Neural Engine pour établir le plan d’exécution le plus efficace pour l’appareil. Les parties d’un modèle qui ne conviennent pas au Neural Engine tournent ailleurs.
La façon dont le modèle est écrit décide de la part qui arrive sur le Neural Engine. Dans un exemple publié, des ingénieurs d’Apple ont restructuré un modèle de texte pour le Neural Engine et l’ont mesuré jusqu’à 10 fois plus rapide, avec un pic de mémoire 14 fois plus faible sur iPhone 13, que la version non optimisée. C’est exactement pour cette raison que le même modèle peut être rapide dans une app et lent dans une autre.
Les questions qu’on se pose.
Que fait le Neural Engine pour la dictée ?
Il fait tourner le modèle de reconnaissance vocale en temps réel avec très peu d’énergie, si bien qu’un outil de dictée local peut transcrire en continu sans chauffer la machine ni vider la batterie. C’est pourquoi la dictée locale semble sans effort sur Apple silicon et lente sur les Mac plus anciens.
Faut-il Apple silicon pour la dictée locale ?
Pour qu’elle soit agréable, oui. Techniquement, les modèles peuvent tourner sur un CPU Intel, mais lentement. C’est pour cette raison que la plupart des outils de dictée sur l’appareil pour Mac exigent un M1 ou plus récent.
Mon Mac a-t-il un Neural Engine ?
Oui, s’il a Apple silicon. Choisissez le menu Apple → À propos de ce Mac : une ligne intitulée Puce signifie Apple silicon, et une ligne intitulée Processeur avec un nom Intel signifie pas de Neural Engine.
Quand le Neural Engine d’Apple est-il apparu ?
Apple indique que le premier Neural Engine est arrivé en 2017 avec la puce A11 de l’iPhone X. Il est arrivé sur le Mac avec la puce M1.
Le Neural Engine est-il la même chose que le GPU ?
Non. Ce sont deux parties distinctes d’une puce Apple silicon. Core ML peut répartir un même modèle entre le CPU, le GPU et le Neural Engine.