← Derniers articles
💻 computer science

BF16 Component-Product Emulation of FP32 and FP64 GEMM on Intel AMX

Cet article présente un algorithme orienté CPU qui exploite les produits matriciels Intel AMX BF16 pour émuler des opérations GEMM FP32 et FP64 de haute précision, atteignant un débit compétitif et une précision ajustable en décomposant les opérandes en plusieurs composantes de faible précision et en les accumulant dans une précision supérieure.

Auteurs originaux : Bing Cui, Yu Liu

Publié 2026-09-07✓ Author reviewed
📖 4 min de lecture☕ Lecture pause café

Auteurs originaux : Bing Cui, Yu Liu

Article original sous licence CC BY 4.0 (http://creativecommons.org/licenses/by/4.0/). Ceci est une explication générée par l'IA de l'article ci-dessous. Elle n'a pas été rédigée par les auteurs. Pour une précision technique, consultez l'article original. Lire la clause de non-responsabilité complète

Les ordinateurs modernes sont construits avec une division croissante dans leur machinerie interne. D'un côté, il existe des moteurs puissants conçus spécifiquement pour l'intelligence artificielle, qui excellent dans l'exécution de milliards de calculs simples très rapidement. Ces moteurs fonctionnent mieux avec des nombres courts et simples, sacrifiant un infime détail pour une vitesse massive. De l'autre côté, le monde de la découverte scientifique — simuler les modèles météorologiques, modéliser la façon dont les atomes se lient ou prédire l'écoulement des fluides — repose encore sur des nombres longs et précis. Ces calculs scientifiques ont besoin de chaque fragment de détail pour rester stables et précis, mais les composants informatiques standards qui les gèrent sont souvent plus lents et moins efficaces que les nouveaux moteurs d'IA. Cela crée un dilemme : les scientifiques ont besoin de la vitesse du nouveau matériel, mais ils ne peuvent pas se permettre de perdre la précision qu'exige leur travail.

Des chercheurs de Maginfra Co., Ltd. en Chine ont exploré un moyen de combler cet écart en utilisant un type spécifique de puce informatique appelé Intel AMX. Leur objectif était de voir si les moteurs d'IA rapides et à faible précision pouvaient être trompés pour effectuer les mathématiques lentes et de haute précision requises par la science. Au lieu de demander à la puce d'effectuer directement les calculs difficiles, ils ont décomposé le problème en morceaux plus petits et plus simples. Imaginez que vous essayiez de mesurer une très longue distance avec une règle qui n'a que des graduations pour des pouces entiers. Vous pourriez mesurer les pouces entiers, puis mesurer la fraction restante, puis la minuscule fraction restante, et tout additionner pour obtenir un total précis. Les chercheurs ont appliqué cette même logique aux nombres. Ils ont pris un nombre complexe unique et l'ont divisé en plusieurs parties plus simples que le moteur d'IA rapide pouvait gérer facilement. Ils ont ensuite effectué de nombreux calculs rapides sur ces parties et les ont soigneusement réassemblés pour reconstruire la réponse finale, hautement précise.

L'équipe a testé cette approche sur deux niveaux de précision différents. Premièrement, ils ont abordé les mathématiques en simple précision, qui est la norme pour de nombreuses applications scientifiques. Ils ont découvert qu'en divisant chaque nombre en trois parties et en effectuant six calculs spécifiques, ils pouvaient obtenir des résultats tout aussi précis que les meilleurs logiciels existants, mais de manière nettement plus rapide. Sur les puces informatiques qu'ils ont testées, cette méthode était entre 1,14 et 2,56 fois plus rapide que la méthode standard de calcul. L'accélération était la plus notable avec des ensembles de données plus importants, où les frais généraux liés à la division et au réassemblage des nombres devenaient moins importants par rapport à la vitesse pure des calculs.

Lorsqu'ils sont passés aux mathématiques en double précision, encore plus exactes et utilisées pour les simulations scientifiques les plus exigeantes, le défi a augmenté. Ici, les chercheurs ont dû diviser chaque nombre en six parties. Parce que les calculs devaient être réassemblés avec un soin extrême, le processus est devenu plus compliqué. Ils ont testé différentes versions de cette méthode, conservant de six à vingt et un petits morceaux de calcul. Ils ont découvert un compromis clair : conserver plus de morceaux rendait la réponse plus précise, mais ralentissait également le processus. Avec seulement six morceaux, la méthode était assez rapide pour battre le logiciel standard pour les problèmes très volumineux, fonctionnant jusqu'à 1,7 fois plus vite. Cependant, en ajoutant plus de morceaux pour améliorer la précision, le travail supplémentaire requis pour les gérer absorbait l'avantage de vitesse. Finalement, essayer de conserver vingt et un morceaux rendait la méthode plus lente que l'approche standard, même si elle était plus précise.

L'étude a également souligné que cette technique n'est pas une solution universelle pour chaque situation. Elle fonctionne mieux lorsque les nombres calculés restent dans une plage spécifique, de la même manière qu'une règle dotée d'une longueur limitée ne peut pas mesurer une distance trop vaste ou trop minuscule sans ajustements spéciaux. Les chercheurs ont noté que leur méthode ne fonctionne pas pour tous les types de nombres possibles, particulièrement ceux qui sont extrêmement grands ou extrêmement petits, et elle ne garantit pas une correspondance parfaite, bit par bit, avec les logiciels existants. Au lieu de cela, elle offre un nouvel outil pour les scientifiques qui ont besoin de haute vitesse et de haute précision, à condition que leurs données respectent les limites de la méthode. En montissant que le matériel à faible précision peut être utilisé pour résoudre des problèmes à haute précision, ce travail suggère un avenir où les moteurs spécialisés construits pour l'intelligence artificielle peuvent également accélérer les tâches lourdes de la découverte scientifique.

Noyé(e) sous les articles dans votre domaine ?

Recevez des digests quotidiens des articles les plus récents correspondant à vos mots-clés de recherche — avec des résumés techniques, dans votre langue.

Essayer Digest →