AMD et Intel étendent leur collaboration dans l’écosystème x86 vers les logiciels d’intelligence artificielle. Selon le communiqué officiel d’Intel, les deux entreprises vont regrouper sous oneDNN les optimisations que PyTorch utilise sur les processeurs x86. L’objectif est de réduire le besoin pour les développeurs de gérer des chemins logiciels distincts pour AMD et pour Intel.
La décision suit les recommandations du X86 Ecosystem Advisory Group. AMD intègre ses optimisations ZenDNN dans oneDNN et rejoint la UXL Foundation en tant que membre directif. Ainsi, les améliorations propres au processeur seront abordées au sein d’une plateforme de développement open source commune.
Pour les équipes utilisant PyTorch, cette approche vise à simplifier le processus de création, de maintenance et de déploiement de l’application sur différents serveurs x86. Toutefois, l’annonce ne prétend pas que tous les processeurs offriront les mêmes performances. Les instructions prises en charge par le matériel et les tâches effectuées par l’application continueront d’influencer le résultat.
Par ailleurs, les entreprises prévoient que le support futur des AI Compute Extensions arrive sur PyTorch via les mises à jour de oneDNN. Ces extensions visent à accélérer les multiplications de matrices, largement utilisées dans les tâches d’intelligence artificielle. L’annonce ne signifie pas que ce support sera ajouté à tous les processeurs existants par le biais d’une simple mise à jour logicielle.
oneDNN choisit, à l’exécution, le chemin de calcul adapté au matériel
La description du projet open source oneDNN indique que la bibliothèque accélère des opérations fondamentales telles que la multiplication de matrices, les convolutions, les mécanismes d’attention et la normalisation. Ce sont des calculs réutilisés fréquemment lors du fonctionnement des modèles d’intelligence artificielle. La bibliothèque est utilisée non seulement avec PyTorch, mais aussi avec d’autres cadres logiciels tels que TensorFlow et OpenVINO.
oneDNN peut détecter les caractéristiques du processeur au moment de l’exécution et créer les noyaux de calcul appropriés. Le jeu d’instructions, le nombre de cœurs et le cache, entre autres détails matériels, jouent un rôle dans ce choix. Ainsi, l’utilisation d’une interface logicielle commune permet d’évaluer ces différences matérielles au même niveau, plutôt que de les ignorer.
D’autre part, le champ du projet ne se limite pas aux processeurs x86. La bibliothèque open source prend en charge différentes architectures de processeurs et les GPU graphiques Intel. Cette annonce d’AMD et d’Intel se concentre en particulier sur la partie qui mutualise l’accélération de PyTorch sur les processeurs x86. L’avantage attendu pour les développeurs est de pouvoir gérer la même application d’intelligence artificielle sur les systèmes des deux fabricants en s’appuyant sur une base logicielle plus cohérente.
La bibliothèque prend également en charge les calculs en différentes précisions numériques. Ces options permettent d’évaluer les besoins en mémoire et en calcul du modèle en fonction des capacités du matériel. La base de développement commune jouera également un rôle dans le transfert de ces choix techniques vers les cadres d’application.




