Le développeur chez Amazon, Sebastien Stormacq, a écrit dans un billet de blog que l’adoption d’AWS Inferentia pour certaines compétences d’Alexa entraîne une amélioration du taux de latence de 25 %, à un coût estimé quant à lui comme étant 30 % moins cher.
« Aujourd'hui, nous annonçons que l'équipe d'Amazon Alexa a migré la grande majorité de ses charges de travail d'inférence d'apprentissage machine basées sur les GPU vers les instances Amazon Elastic Compute Cloud (EC2) Inf1, alimentées par AWS Inferentia. Il en résulte une latence de bout en bout réduite de 25 % et un coût inférieur de 30 % par rapport aux instances basées sur le GPU pour les charges de travail de synthèse vocale d'Alexa. La latence réduite permet aux ingénieurs d'Alexa d'innover avec des algorithmes plus complexes et d'améliorer l'expérience globale d'Alexa pour nos clients », lit-on.
Stormacq décrit la conception matérielle d'Inferentia comme suit : « AWS Inferentia est une puce personnalisée, construite par AWS, pour accélérer les charges de travail d'inférence d'apprentissage machine et optimiser leur coût. Chaque puce AWS Inferentia contient quatre NeuronCores. Chaque NeuronCore met en œuvre un moteur de multiplication de matrice systolique à haute performance, qui accélère massivement les opérations d'apprentissage approfondi typiques telles que la convolution et les transformateurs. Les NeuronCores sont également équipés d'un grand cache sur la puce, qui permet de réduire les accès à la mémoire externe, ce qui réduit considérablement la latence et augmente le débit ».
Alexa est le service vocal dans le Cloud d'Amazon qui alimente les appareils Amazon Echo et plus de 140 000 modèles de haut-parleurs, de lumières, de prises, de téléviseurs et d'appareils photo intelligents. Selon l’entreprise, les clients connectent, par jour, plus de 100 millions d'appareils à Alexa, actuellement. Mais si ces appareils sont installés dans les bureaux ou les domiciles, le cerveau d'Alexa est déployé sur AWS, de sorte que lorsque quelqu'un qui possède un Echo ou un Echo dot utilise l'assistant personnel Alexa, une très petite partie du traitement est effectuée sur l'appareil lui-même.
Les charges de travail pour une demande Alexa essentiellement basées sur l’intelligence artificielle
Lorsque les utilisateurs d'appareils tels que la ligne de haut-parleurs intelligents Echo d'Amazon posent une question à l'assistant vocal, l’appareil détecte le mot de réveil (Alexa) en utilisant son propre traitement embarqué, puis transmet la demande aux centres de données d'Amazon. Echo renvoie ensuite la requête à l'un des centres de données d'Amazon pour plusieurs étapes de traitement. Lorsque les ordinateurs d'Amazon déterminent une réponse, cette réponse est sous forme de texte qui doit être traduit en langage audible pour l'assistant vocal.
Ces étapes de calcul, après l’envoie de la requête au centre de données, ont toujours été prises en charge par des GPU signés Nvidia, qui a justement défini sa stratégie sur l'intelligence artificielle en adaptant ses puces graphiques aux types de calculs requis pour l'entraînement de modèle ou l'inférence. Spécialisés dans les calculs parallèles, les GPU sont beaucoup plus performants que les CPU pour ces tâches, et ils ont donc été rapidement adoptés pour cet usage.
Mais désormais, Alexa utilisera AWS Inferencia, la première puce mise au point par Amazon, qui a été conçue spécifiquement pour accélérer les calculs de deep learning. « AWS Inferentia est conçu pour fournir des performances d'inférence élevées dans le Cloud, réduire le coût total de l'inférence et permettre aux développeurs d'intégrer facilement du machine learning aux fonctionnalités et aux capacités de leurs applications métier », a rappelé Amazon dans son billet de blog. Ces puces étant conçues spécifiquement pour ces tâches, elles sont encore plus efficaces que les GPU dans leur accomplissement.
Annoncée pour la première fois en 2018, la puce d'Amazon est conçue sur mesure pour accélérer de grands volumes de tâches d'apprentissage machine telle que la traduction de texte en parole ou la reconnaissance d'images. Les clients du Cloud Computing tels qu'Amazon, Microsoft et Google d'Alpahbet Inc. sont devenus les plus gros acheteurs de puces informatiques, ce qui a entraîné un boom des ventes liées aux centres de données chez Intel, Nvidia et d'autres.
Mais les grandes entreprises technologiques, soucieuses de réduire leur dépendance aux deux géants du secteur, Nvidia et Intel, abandonnent de plus en plus les fournisseurs de silicium traditionnels pour concevoir leurs propres puces sur mesure. Apple a présenté cette semaine ses trois premiers ordinateurs Mac (un MacBook Air, un MacBook Pro avec un écran de 13 pouces et un Mac Mini) avec ses propres processeurs centraux sous architecture ARM conçus en interne. Apple a même déclaré qu'il prévoyait de faire passer tous ses Macs sur ses propres processeurs au cours des deux prochaines années, s'éloignant ainsi des puces Intel.
L’assistant personnel Alexa n'est pas le seul à bénéficier du processeur Inferentia : la puce alimente les instances Inf1 d'Amazon AWS, qui sont accessibles au grand public et qui concurrencent les instances G4 d'Amazon alimentées par le GPU. Le kit de développement logiciel AWS Neuron d'Amazon permet aux développeurs de machines learning d'utiliser Inferentia comme cible pour des frameWorks populaires, notamment TensorFlow, PyTorch et MXNet, d’après Stormacq.
Outre Alexa, Seb Stomarcq a précisé que Rekognition, le système de reconnaissance faciale d’Amazon s'appuyant sur le Cloud, et beaucoup décrié, allait être lui aussi doté du silicium du groupe. Dans son article, il cite quelques clients extérieurs ayant recours à l'Inferentia. Parmi eux, Snap Inc. pour son application Snapchat ou encore le groupe Condé Nast. La puce est également utilisée par l'assureur Anthem.
« Des clients, des entreprises du Fortune 500 aux startups, utilisent les instances Inf1 pour l'inférence de l'apprentissage machine. Par exemple, Snap Inc. intègre l'apprentissage machine dans de nombreux aspects de Snapchat, et l'exploration de l'innovation dans ce domaine est pour eux une priorité essentielle. Après avoir entendu parler d'AWS Inferentia, ils ont collaboré avec AWS pour adopter les instances Inf1 afin de faciliter le déploiement de l'apprentissage machine, notamment en termes de performances et de coûts », lit-on.
« Il est étonnant et excitant de voir comment toutes ces entreprises sortent "de nulle part" avec leurs propres puces pour se libérer de la possibilité d'être contrôlées par les sociétés de puces établies, comme dans ce cas, NVIDIA. Peut-être que cela finira par se répercuter sur les PC ordinaires et d'autres appareils, comme les Pi. Une époque intéressante ! », a réagi un commentateur. Et vous, qu’en pensez-vous ?
Source : AWS
Et vous ?
Que pensez-vous de cette migration des charges de travail d’Alexa des puces graphiques NVIDIA vers AWS Inferentia d’Amazon ?
La migration réduit la latence de 25 % et les coûts 30 %. Quel est votre commentaire ?
Voir aussi :
Amazon dévoile sa seconde génération de puces Arm 64 bits conçue en interne et ciblant l'infrastructure Cloud, l'entreprise confirme aussi sa volonté de réduire sa dépendance vis-à-vis du géant Intel
Amazon a annoncé qu'il va construire ses propres puces pour piloter ses serveurs, Intel devrait-il s'inquiéter ?
Facebook et Intel travaillent ensemble sur une puce d'intelligence artificielle, dont la sortie est prévue pour le second semestre 2019
Ampere dévoile Altra : sa nouvelle famille de puces Arm dédiées aux centres de données, et son vaisseau amiral, le premier processeur du genre embarquant jusqu'à 80 cœurs / 80 threads