zentilia - Fotolia
Microsoft dope son infrastructure aux puces programmables FPGA
Microsoft a affirmé avoir finalisé le déploiement de puce FPGA dans ses datacenters Azure de 15 pays pour préparer son infrastructure à la montée des applications de Big Data.
Parce que traiter et analyser des données en volume et y appliquer des algorithmes de ML (on parle aussi l’Intelligence artificielle) sont des processus très intensifs, Microsoft a décidé de déployer des puces programmables pour supporter ces besoins à grande échelle.
Lors sa conférence Ignite, qui se tient actuellement à Atlanta, l’éditeur a rappelé son ambition de créer des environnements Cloud aux performances illimitées, non sujettes aux principes restrictifs de la loi de Moore, et surtout, qui ne soient restreints par les capacités des CPU.
Pour Doug Burger, ingénieur au sein de la division R&D de Microsoft, la loi de Moore pourrait bien être encore valide pour un ou deux ans, mais va vaciller avec la montée en puissance des usages liés aux applications Big Data. « Nous sommes toujours dans cette période de croissance exponentielle qui dure depuis 50 ans, où le coût de compute n’a cessé que de baisser. Aujourd’hui, les choses commencent à se tasser », assure-t-il. « Les CPUs ne montent plus aussi rapidement en vélocité, il devient compliqué de faire évoluer les couches de silicium, et la demande en matière d’applications Big Data augmente plus rapidement que les capacités de traitement de l’infrastructure. »
Ce constat a poussé certaines entreprises à centrer leurs recherches et développements sur la création de technologies alternatives, plus durables dans le temps. « Dans la loi de Moore, chaque génération a ses propres problèmes. Ceux-ci sont résolus de façon incrémentale pour conserver la capacité d’échelle. Mais ce sont des contournements qui ne font que s’ajouter », lance le spécialiste. « Jusqu’à présent, ils ont fait évoluer ces capacités d’échelle sans toucher à l’infrastructure, mais désormais les actions à fournir sont trop compliquées, et nous devons penser à changer la couche sous-jacente, avec d’autres technologies, comme le hardware programmable. »
Modifier le hardware à la volée et en production
En la matière, l’approche de Microsoft repose sur la technologie FPGA (pour Field Programmable Gate Array). Avec celle-ci, une entreprise peut modifier une fonction du hardware, à la volée et en production. Cette technologie est d’ailleurs au cœur de la stratégie de Microsoft autour de l’intelligence artificielle et doit donc s’assurer que son infrastructure Cloud est équipée pour supporter les besoins en performances.
« L’architecture que nous avons développée s’appuie en effet sur un calculateur dédié à l’IA et qui s’adosse à des puces programmables FPGA. Il est placé dans notre Cloud hyperscale. Nous obtenons des résultats impressionnants en matière de rapidité, d’échelle et d’efficacité. Cela ouvre le champ des possibles en termes d’IA », ajoute encore Doug Burger. Dans une démonstration, le spécialiste a montré combien une opération de classification de photo pouvait être accélérée avec une seule puce FGPA de 30 watts, comparé à un serveur équipé d’une puce classique. L’exercice a aussi été testé sur la traduction des 1 440 pages de Guerre et Paix, du Russe vers l’Anglais. Cela a permis de comparer un traitement via une configuration FPGA et une configuration bâtie sur un CPU 24 cœurs – et qui utilise plus d’énergie.
Avec la puce FPGA, la traduction a pris 2,5 secondes, tandis qu’avec l’autre configuration, cela a pris 8 fois de temps pour opérer la même tâche.
La technologie est en développement chez Microsoft depuis 2011 et a demandé l’élaboration de plusieurs générations de produit pour arriver à un résultat qui puisse être déployé à l’échelle dans Azure et dans Bing. Ces deux seules activités ont pour l’heure officialisé leur usage de FPGA. Cela permet par exemple à Bing de mieux exploiter les ressources d’infrastructure.
« Nous avons conçu notre architecture de façon à ce que les puces FPGA communiquent entre elles via le réseau, sans solliciter le CPU », explique Doug Burger. « Si ainsi nous disposons d’un serveur avec un FGPA, mais que le service qui tourne ne l’exploite pas, nous pouvons le solliciter pour d’autres opérations. »
Avec son recours aux puces programmables dans Azure, Microsoft peut se vanter d’être le premier à déployer cela à l’échelle pour créer ce qu’il baptise « un cloud augmenté et intelligent ». « Certaines entreprises ont annoncé l’utiliser mais sur une fonction spécifique, comme le réseau, mais cela ne fait qu’augmenter le serveur. Nous avons créé une architecture flexible qui peut être exploitée pour le réseau mais aussi pour d’autres usages », poursuit-il.
Traduit et adapté par la rédaction