Trois processeurs, différents types de tâches
CPU, GPU et NPU ne sont pas trois niveaux sur une même échelle de puissance de calcul. Ce sont des unités de traitement aux conceptions et aux rôles différents : le CPU exécute une grande variété d’instructions, le GPU excelle lorsque de nombreuses opérations peuvent être réalisées en parallèle, et le NPU se consacre aux opérations fréquentes dans certains modèles d’intelligence artificielle. L’avantage dépend de la tâche, pas seulement du nom inscrit sur la fiche technique.
Dans un ordinateur, ces composants peuvent être intégrés à une même puce ou répartis entre plusieurs composants. Un GPU intégré partage le même boîtier que le processeur principal ; un GPU dédié est un composant distinct. Tous deux peuvent traiter des graphismes, mais leurs capacités et leurs limites énergétiques dépendent de leur conception. L’intégration ne signifie pas l’absence de GPU : elle signifie qu’il n’y a pas de carte graphique séparée.
Une analogie utile consiste à imaginer des équipes aux spécialités différentes : le CPU prend en charge des tâches variées et coordonne le travail, le GPU répartit les tâches divisibles entre de nombreuses unités, et le NPU exécute efficacement certaines opérations d’IA. L’analogie a ses limites : une application peut utiliser plusieurs unités, et le système d’exploitation ainsi que les logiciels déterminent la répartition du travail.
Le CPU : polyvalence et réactivité pour les tâches générales
Le CPU exécute les instructions du système d’exploitation et des applications ; il est indispensable au fonctionnement courant de l’ordinateur. Naviguer sur Internet, ouvrir des programmes, gérer des fichiers et effectuer divers calculs mobilisent le CPU, même si une tâche donnée peut en déléguer certaines parties à d’autres processeurs. Son principal atout est sa polyvalence : il peut traiter des opérations très diverses, y compris celles qui se prêtent mal à une exécution simultanée.
Le CPU exécute les instructions du système d’exploitation et des applications ; il est indispensable au fonctionnement courant de l’ordinateur. Naviguer sur Internet, ouvrir des programmes, gérer des fichiers et effectuer divers calculs mobilisent le CPU, même si une tâche donnée peut en déléguer certaines parties à d’autres processeurs. Son principal atout est sa polyvalence : il peut traiter des opérations très diverses, y compris celles qui se prêtent mal à une exécution simultanée.
Le CPU exécute les instructions des programmes et des systèmes d’exploitation. Ses performances contribuent à la rapidité de tâches telles que la navigation, les calculs ou le travail dans un tableur. Le GPU ne remplace pas ce rôle général, même s’il peut travailler avec le CPU sur des tâches adaptées au traitement parallèle.
Le GPU : le traitement parallèle pour les graphismes et au-delà
Le GPU a été conçu pour traiter des graphismes, pour lesquels des opérations similaires peuvent être appliquées à de nombreux éléments d’une image. Cette organisation convient également à d’autres charges de travail parallélisables, comme certains traitements vidéo, calculs scientifiques ou travaux d’intelligence artificielle. Le parallélisme est son principal avantage : le GPU peut traiter simultanément de grands ensembles d’opérations compatibles, tandis que le CPU gère la coordination et le code qui ne bénéficie pas de cette répartition.
L’accélération ne se produit pas simplement parce qu’un ordinateur possède un GPU. L’application doit être conçue pour l’utiliser ; le modèle de programmation, les pilotes et les bibliothèques compatibles influent aussi sur le résultat. NVIDIA décrit le calcul accéléré comme l’affectation au GPU des parties les plus intensives d’une application, tandis que le reste continue de fonctionner sur le CPU. Le logiciel doit savoir déléguer le travail pour que le matériel spécialisé apporte un gain.
Un GPU intégré convient souvent aux ordinateurs compacts et peut aider à limiter la consommation ; un GPU dédié peut offrir davantage de ressources pour les tâches graphiques exigeantes, au prix d’une consommation, d’un encombrement et d’une chaleur supplémentaires. Ces catégories ne garantissent pas à elles seules un niveau de performances : les conceptions diffèrent beaucoup dans les deux cas. Pour jouer, monter des vidéos ou travailler avec des modèles, vérifiez l’application, la mémoire disponible et les exigences précises, en plus du nom du GPU.
Le NPU : une accélération spécialisée pour l’IA
Un NPU, ou unité de traitement neuronal, est un accélérateur conçu pour certaines opérations utilisées par les réseaux neuronaux. Il peut exécuter une inférence, c’est-à-dire appliquer un modèle déjà entraîné pour produire un résultat, par exemple une transcription ou une amélioration d’image. Selon Microsoft, Windows ML peut diriger l’inférence vers le CPU, le GPU ou le NPU au moyen de fournisseurs d’exécution ; le processeur choisi dépend du matériel disponible et du modèle. La présence d’un NPU n’active pas automatiquement toutes les fonctions d’IA.
Le NPU peut exécuter localement les inférences compatibles et sa conception vise à réaliser ces opérations efficacement. Le résultat dépend du modèle, de l’appareil et de l’implémentation. Pour utiliser le NPU, l’application doit disposer d’un chemin logiciel compatible et, parfois, d’un modèle adapté au matériel. La compatibilité de l’application compte autant que la puce.
Toutes les fonctions commercialisées comme relevant de « l’IA » n’exigent pas non plus un NPU. Certaines peuvent fonctionner sur un CPU ou un GPU, tandis que d’autres dépendent de services distants. Sous Windows, les API d’IA, Windows ML et les autres environnements disposent d’exigences et de champs d’application différents ; les fonctions réservées à une catégorie précise de PC ne doivent pas être confondues avec la capacité générale d’exécuter des modèles sur différents accélérateurs. Avant d’acheter, vérifiez la fonction souhaitée et le matériel ainsi que la version logicielle qu’elle exige.
Comment CPU, GPU et NPU travaillent ensemble
Dans un processus de travail, les processeurs peuvent se répartir les étapes : le CPU prépare les données et coordonne, le GPU traite une partie parallélisable et le NPU peut exécuter une inférence compatible. Cette répartition n’est pas fixe d’un ordinateur à l’autre. Les logiciels peuvent diriger l’inférence vers différents processeurs, selon le matériel disponible et le modèle ; les performances varient en fonction de la configuration.
Windows ML illustre cette approche pour les modèles ONNX : sa documentation indique qu’il peut utiliser des CPU, des GPU et des NPU grâce à des fournisseurs d’exécution, et que les performances dépendent de la configuration et du modèle. Une application peut également utiliser le CPU comme solution de repli lorsqu’aucun accélérateur adapté n’est disponible. Cela permet de concevoir des applications pour diverses configurations, sans pour autant garantir une vitesse identique partout ni la compatibilité de tous les modèles avec chaque unité.
Dans un ordinateur portable, intégrer CPU et GPU peut contribuer à réduire la taille et la consommation ; un GPU dédié ajoute une ressource distincte pour les tâches capables d’en tirer parti. Un NPU intégré apporte une autre possibilité spécialisée pour certains modèles d’IA. Chaque unité offre des capacités différentes : son utilité dépend de la compatibilité de la tâche et des logiciels.
Les logiciels déterminent si un accélérateur est exploité
Les capacités théoriques d’un composant ne signifient pas qu’une application l’utilisera. Le développeur doit intégrer la prise en charge de l’accélérateur, de l’environnement d’exécution et des pilotes disponibles ; le modèle peut également devoir être converti ou optimisé. Microsoft explique, par exemple, que certains NPU acceptent des formats numériques de précision plus faible et que les modèles doivent être préparés pour y être exécutés. La prise en charge doit couvrir toute la chaîne, du modèle au pilote.
Il importe également de distinguer l’inférence de l’entraînement. Dans un PC, un NPU est généralement destiné à exécuter des modèles pour produire des résultats, et non à prendre en charge toutes les étapes de création ou d’entraînement des modèles. Le GPU peut accélérer certaines charges d’entraînement et d’inférence, tandis que le CPU conserve ses fonctions générales et peut servir de solution de repli. Ces catégories se recoupent pour certaines tâches, mais elles ne sont pas interchangeables dans tous les programmes.
Les performances d’un modèle d’IA peuvent varier selon la configuration matérielle. Comparez les résultats obtenus avec le modèle et l’ordinateur qui correspondent à votre usage.
Que vérifier avant de choisir un ordinateur
Commencez par votre usage principal, plutôt que par l’étiquette « AI PC » ou le composant affichant le chiffre le plus impressionnant. Pour les tâches générales, comparez le CPU et la capacité mémoire ; pour les jeux ou la création visuelle, examinez le GPU et les exigences du programme ; pour une fonction d’IA locale, vérifiez si l’application prend en charge le NPU et exige un modèle ou une version de Windows spécifique. La spécification utile est celle qui correspond à votre charge de travail.
Une vérification pratique peut suivre cet ordre :
- Identifiez l’application et la tâche précise que vous souhaitez accélérer.
- Consultez les exigences officielles concernant le système, l’accélérateur, la mémoire et la version du logiciel.
- Vérifiez si la fonction s’exécute localement ou dépend d’un service en ligne.
- Recherchez des résultats de performances pour cette application et une configuration comparable.
- Évaluez la consommation, le bruit, la taille et l’autonomie en même temps que la vitesse.
CPU, GPU et NPU sont conçus pour différents types de traitement et peuvent être utiles pour différentes tâches. C’est l’application qui détermine si elle utilise un accélérateur et quelle unité elle exploite. Vérifiez la compatibilité avec le programme que vous comptez utiliser et consultez ses exigences matérielles et logicielles.