Kingsoft Cloud : un Cloud amélioré pour les développeurs d'IA

Kingsoft Cloud a déployé des processeurs Intel® Xeon® Scalable pour permettre aux développeurs d'accroître l'efficacité de leur R&D en IA.

En bref :

  • En tant que fournisseur mondial de services Cloud premium, Kingsoft Cloud s'efforce de fournir une Infrastructure en tant que Service de qualité supérieure, afin de donner aux utilisateurs un avantage du précurseur dans le domaine de la voix, de l'image, de la vidéo et de nombreux autres scénarios d'applications d'IA.

  • Afin d'aider les développeurs à accroître l'efficacité de leur R&D en matière d'IA, Kingsoft Cloud a déployé des processeurs Intel® Xeon® Scalable et d'autres produits matériels avancés dans ses instances Cloud et a introduit des optimisations des infrastructures d'IA, notamment Intel® Optimization for TensorFlow* et Intel® Optimization for Caffe*.

BUILT IN - ARTICLE INTRO SECOND COMPONENT

L'utilisation de services Cloud pour accélérer la recherche et le développement (R&D) d'applications d'intelligence artificielle (IA) est devenue la règle d'or pour de nombreuses équipes de développement d'IA. En tant que fournisseur mondial de services Cloud premium, Kingsoft Cloud s'efforce de fournir une Infrastructure en tant que Service (IaaS) de qualité supérieure via un ensemble de serveurs Cloud haute performance comme Kingsoft Elastic Compute et des hôtes physiques de Cloud comme Elastic Physical Compute, afin de permettre aux utilisateurs de bénéficier d'un avantage du précurseur dans le domaine de la voix, de l'image, de la vidéo et de nombreux autres scénarios d'applications d'IA.

Afin d'aider les développeurs à accroître l'efficacité de leur R&D en matière d'IA, Kingsoft Cloud, en collaboration avec son partenaire stratégique Intel, a déployé des processeurs Intel® Xeon® Scalable et d'autres produits matériels avancés dans ses instances Cloud et a introduit des optimisations des infrastructures d'IA, notamment Intel® Optimization for TensorFlow* et Intel® Optimization for Caffe*. Cet ensemble de matériels et de logiciels optimisés pour l'IA a amélioré les capacités de l'IaaS de Kingsoft Cloud permettant une meilleure prise en charge des charges de travail de l'IA. Les utilisateurs n'ont plus à se soucier de la configuration compliquée et du réglage délicat des infrastructures sous-jacentes de l'IA. Grâce à ce service unique, ils obtiennent plutôt des performances optimales sur l'infrastructure Cloud basée sur le processeur Intel® Xeon® Scalable.

Les tests réalisés par Kingsoft Cloud montrent que les performances de plusieurs infrastructures d'IA optimisées se sont améliorées à plusieurs reprises, voire des dizaines de fois dans divers modèles de deep learning. Cela montre que l'IaaS améliorée de Kingsoft Cloud, regroupant du matériel et des logiciels optimisés pour la plateforme Intel® Xeon® Scalable, peut fournir des performances exceptionnelles pour la R&D en IA dans différents scénarios d'application et accélérer les progrès des développeurs dans ce domaine.

« Kingsoft Cloud s'est efforcé de fournir des services Cloud de première classe pour la R&D en matière d'IA. Cela nécessite non seulement une plateforme matérielle performante comme base, mais aussi une collaboration et une optimisation complète des logiciels et du matériel. En déployant divers produits matériels avancés d'Intel et avec l'introduction d'Intel Optimization for TensorFlow, Intel Optimization for Caffe et d'autres infrastructures optimisées, nous offrons aux développeurs une IaaS améliorée tout en réduisant considérablement leur investissement dans le déploiement et l'optimisation des systèmes. Cela leur permet de se concentrer davantage sur l'activité d'IA elle-même. » - Feng Yang, Cloud Computing R&D Director, Kingsoft Cloud

Avantages des solutions de Kingsoft Cloud 1

  • Les multiples optimisations pré-packagées d'Intel pour les infrastructures de deep learning permettent aux utilisateurs qui mènent des travaux de R&D en IA avec Kingsoft Cloud de réduire le temps et les efforts de téléchargement, de déploiement et d'optimisation des infrastructures concernées afin de pouvoir consacrer plus de ressources aux travaux d'IA ;
  • Intel Optimization for TensorFlow améliore de 2,45 à 2,89 fois les performances des instances de Kingsoft Cloud construites sur des processeurs basés sur l'architecture Intel® dans divers modèles de réseaux de neurones profonds (DNN) ;2
  • Grâce à l'introduction d'Intel Optimization for Caffe, les performances des instances Kingsoft Cloud construites sur des processeurs basés sur l'architecture Intel se sont améliorées dans divers modèles DNN. Dans ResNet50, les performances ont été améliorées de près de 30 fois.2

Fournir une IaaS haute performance pour l'IA
Les services de Cloud public, en constante évolution, jouent un rôle de plus en plus important dans la R&D en matière d'IA. Grâce à une allocation flexible des ressources et à une grande évolutivité, les services Cloud publics permettent une programmation agile de la puissance de calcul, des algorithmes et des données nécessaires à la R&D en matière d'IA et peuvent accroître l'efficacité. Par conséquent, de plus en plus d'équipes de développement de l'IA se tournent vers les services Cloud pour leur R&D et leur innovation en matière d'IA.

Afin de fournir aux utilisateurs des services d'IaaS plus efficaces et plus rentables, Kingsoft Cloud et Intel collaborent pour introduire les processeurs Intel® Xeon® Scalable, les SSD Intel® Optane™ DC, les cartes réseau Intel® Ethernet 25 GbE et d'autres produits et technologies matérielles de pointe dans les instances Kingsoft Cloud (serveurs Cloud, hôtes physiques de Cloud, etc.) en tant que base sur laquelle des capacités d'IaaS haute performance peuvent être construites.

Prenons l'exemple du processeur Intel® Xeon® Platinum 8168 déployé par Kingsoft Cloud, il dispose d'une microarchitecture optimisée, jusqu'à 24 cœurs et 48 threads, offrant une puissance de calcul et une évolutivité supérieures pour les charges de travail d'inférence de l'IA intensives. Parallèlement, sa technologie Intel® Advanced Vector Extensions 512 (Intel® AVX-512) est capable de traiter simultanément 16 nombres à virgule flottante de précision unique, doublant ainsi la capacité de traitement de ces derniers par rapport à la dernière génération d'Intel® Advanced Vector Extensions 2 (Intel® AVX2). Elle le fait via des unités FMA (fused multiply-add) plus nombreuses, offrant un avantage significatif en matière de calcul intensif de vecteurs d'IA.

En parallèle, les plateformes de processeurs Intel® renforcent ces avantages par une évolution continue. L'arrivée des nouveaux processeurs Intel® Xeon® Scalable de 2ᵉ génération intégrant la technologie Intel® Deep Learning Boost va améliorer les performances et l'évolutivité de l'architecture globale des instances Kingsoft Cloud. Au même titre que d'autres technologies et produits matériels, cela donnera du poids aux équipes de développement de l'IA dans divers scénarios d'application de l'IA, tels que la voix, l'image et la vidéo.

Intel® Optimization pour les infrastructures d'IA
Mais cela signifie-t-il que l'amélioration des performances du matériel entraîne une amélioration équivalente de l'efficacité du travail de l'IA ? Les observations de Kingsoft Cloud indiquent que les équipes de développement de l'IA doivent assurer une efficacité optimale en pilotant l'installation, le déploiement et la mise au point des infrastructures de deep learning après avoir identifié leurs appareils matériels haute performance. Cela représente une perte de temps précieux et implique un gaspillage de ressources si les effets de la tentative d'optimisation deviennent moins que souhaitables. Par exemple, si un utilisateur demandait une instance d'hôte physique de Cloud avec 24 vCPU (cœurs de processeur virtuel), seuls 50 % des cœurs de processeur pourraient être pleinement utilisés si la capacité de traitement parallèle des infrastructures d'IA natives est insuffisante. Par conséquent, l'utilisateur devrait demander plus d'instances Cloud pour répondre à ses besoins, ce qui réduirait l'efficacité des systèmes et augmenterait le coût total de possession (TCO).

Afin de résoudre ce problème, Kingsoft Cloud collabore avec Intel pour offrir aux utilisateurs une optimisation Intel pour l'IA intégrant plusieurs infrastructures de deep learning optimisées. Ce service Cloud IaaS amélioré pour la R&D en IA sur des processeurs Intel® Xeon® Scalable libère les développeurs du téléchargement, de l'installation, de la configuration et de la mise au point de ces infrastructures et permet des performances plus élevées.

Figure 1. Amélioration des services Cloud IaaS pour la R&D en matière d'IA.

Prenons l'exemple d'Intel Optimization for TensorFlow, qui prend en charge la primitive DNN dans la bibliothèque Intel® Math Kernel Library for Deep Neural Networks (Intel® MKL-DNN). Cela comprend un ensemble de processus de calcul d'IA à usage général tels que la convolution 2D, la multiplication produit/matrice interne, la normalisation par lots, l'activation ReLU et la transposition multidimensionnelle. Lorsqu'Intel Optimization for TensorFlow est déployé sur des plateformes de processeurs Intel® Xeon® Scalable, la primitive Intel MKL-DNN est utilisée pour aider les utilisateurs à construire rapidement les modules fonctionnels nécessaires.

Intel Optimization for TensorFlow utilise également le réusinage de code pour vectoriser les processus de calcul massifs (tels que la convolution et la multiplication matricielle) qui sont nécessaires au calcul de deep learning, laissant le calcul à Intel AVX-512 pour tirer parti de sa force en matière de calcul vectoriel. En outre, Intel Optimization for TensorFlow peut également programmer des cœurs de processeur inactifs afin d'augmenter davantage la puissance multicœur des processeurs Intel® Xeon® Scalable.

De même, Intel Optimization for Caffe utilise pleinement Intel MKL-DNN afin d'accélérer divers processus de calcul dans les charges de travail de l'IA. Par exemple, des blocs de construction hautement vectorisés et filetés dans Intel MKL-DNN sont utilisés pour mettre en œuvre des modèles de réseaux de neurones convolutionnels dans des interfaces C et C++ et améliorer davantage les performances d'inférence de l'IA avec des solutions technologiques convergentes comme la fusion de couches.

Comparaisons de performances avant et après l'optimisation
Afin de vérifier que les performances des instances d'hôtes de Cloud ont été améliorées grâce à l'introduction de l'optimisation Intel pour l'IA, Kingsoft et Intel ont mené une série de tests sur une instance N3 polyvalente de Kingsoft Cloud3, axée sur les modèles de réseau ResNet50 (un réseau de neurones résiduels), ResNeXt50 (un réseau de neurones résiduels amélioré), Inception-V3 (un réseau de neurones convolutifs), SSD-MobileNet (un réseau de détection d'objets) et Wide & Deep (un algorithme de recommandation classique basé sur les ensembles de données MovieLens-1M). Ces modèles de réseaux de neurones sont largement utilisés pour la segmentation d'images, la recommandation de contenu et d'autres scénarios d'IA courants.

Dans un premier temps, la contribution aux performances d'inférence de l'IA entre Intel Optimization for TensorFlow et TensorFlow natif a été comparée dans quatre DNN : ResNet50, Inception-V3, SSDMobileNet et Wide & Deep. La taille des lots de ResNet50, Inception-V3 et SSD-MobileNet a été fixée à 1, tandis que la taille des lots de Wide & Deep a été fixée à 256.

Figure 2. Comparaison entre TensorFlow natif et Intel Optimization for TensorFlow dans leur contribution aux performances d'inférence de l'IA dans différents DNN.

Les résultats de la comparaison présentés à la Figure 2 indiquent qu'Intel Optimization for TensorFlow a amélioré les performances d'inférence de l'IA d'une instance de Cloud de manière différente dans quatre DNN, par rapport au TensorFlow natif. La performance a été améliorée par 2,89 fois dans SSD-MobileNet.

Dans une autre série de tests, Kingsoft et Intel ont comparé les performances de la propagation avant mise en œuvre par Intel Optimization for Caffe et BVLC Caffe dans ResNet50, Inception-V3, SSD MobileNet et ResNeXt50. La taille des lots dans quatre réseaux de neurones a été fixée à 1.

Figure 3. Comparaison entre Caffe natif et Intel Optimization for Caffe dans leur contribution aux performances de propagation avant de l'IA dans différents DNN.

Il ressort des résultats présentés à la Figure 3 que la contribution de BVLC Caffe aux performances de propagation avant dans les quatre DNN a été inférieure aux attentes. En revanche, la performance a été améliorée de plusieurs fois, voire de dizaines de fois, dans ces DNN grâce à Intel Optimization for Caffe. Dans ResNet50, l'amélioration a atteint le taux incroyable de 27,5 fois.

Conclusion
En offrant aux utilisateurs à la fois une infrastructure matérielle haute performance et un logiciel d'IA (comprenant de multiples infrastructures de deep learning optimisées) dans un lot, l'IaaS améliorée de Kingsoft fournit aux équipes de développement de l'IA une solution unique offrant des performances plus élevées, des solutions technologiques plus complètes et une meilleure évolutivité. Cela leur permet d'affecter une plus grande partie de leurs ressources à la R&D d'application et à l'entreprise elle-même, signifiant qu'ils peuvent à la fois augmenter l'efficacité du développement et réduire le TCO.

Kingsoft Cloud et Intel vont continuer à étendre et à renforcer leur coopération technologique sur la manière dont les services Cloud peuvent améliorer l'efficacité de la R&D en matière d'IA à l'avenir. Grâce au déploiement de la 2ᵉ génération de processeurs Intel® Xeon® Scalable, de la mémoire persistante Intel® Optane™ DC et d'autres nouveaux produits matériels dans Kingsoft Cloud, les deux parties se concentreront sur la manière d'exploiter la valeur d'Intel® Deep Learning Boost et des instances de mémoire haute densité dans le Cloud pour l'IA afin de permettre davantage de recherche, d'exploration et de productivité.

Astuces
Intel® Optimisation pour TensorFlow* :
TensorFlow est une infrastructure open source de deep learning largement utilisée dans les domaines liés à l'IA. Elle fournit une prise en charge pour les charges de travail, notamment la vision par ordinateur, la reconnaissance vocale et le traitement du langage naturel (NLP). Afin d'améliorer les performances de fonctionnement du TensorFlow natif sur la plateforme de processeur basée sur l'architecture Intel, Intel a travaillé avec ses partenaires en vue d'appliquer des optimisations significatives. Il s'agissait notamment d'utiliser plus efficacement le jeu d'instructions Intel AVX-512, d'accroître l'utilisation du cœur du processeur afin d'obtenir des performances plus élevées, de mettre en œuvre la parallélisation sur la couche ou la fonction désignée, ou entre les couches, d'équilibrer l'utilisation des technologies de module prefetch et de module de cache et d'améliorer le format de données des localités spatiales et temporelles. Grâce à ces optimisations, Intel Optimization for TensorFlow propose une amélioration impressionnante des performances par rapport au TensorFlow natif.

Intel® Optimisation for Caffe* : Caffe est une infrastructure de deep learning développée par le Berkeley Vision and Learning Center (BVLC) et des contributeurs de la communauté et comprend une grande quantité de modèles préformés. Outre la fourniture d'un puissant support visuel, vocal et multimédia pour les applications d'IA, elle permet également d'utiliser OpenCV (une bibliothèque de vision par ordinateur largement adoptée) pour renforcer la fonction de vision par ordinateur des appareils mobiles. Intel Optimization for Caffe hérite de tous les atouts de BVLC Caffe, tout en fournissant des fonctionnalités et un entraînement distribué multinodal, ainsi qu'une notation pour l'optimisation Intel. Grâce à la vectorisation de code, elle peut utiliser efficacement les ressources du processeur, améliorant les performances des appels de fonction, réduisant la complexité des algorithmes et diminuant la quantité de calculs. Dans le même temps, cette version introduit des optimisations de code pour les processeurs et les systèmes ainsi que la technologie de parallélisation de code OpenMP qui, ensemble, améliorent considérablement ses performances par rapport à BVLC Caffe.

Pour plus d'informations, veuillez consulter ces pages :
https://github.com/IntelAI/models
https://github.com/intel/caffe
https://www.intel.ai/tensorflow-optimizations-intel-xeon-scalable-processor/
https://software.intel.com/en-us/articles/intel-optimization-for-tensorflow-installation-guide
https://software.intel.com/en-us/mkl/documentation/view-all

En savoir plus sur l'optimisation des logiciels d'Intel pour les charges de travail de l'IA ›

Découvrez les produits et solutions associés

Infos sur le produit et ses performances

1 Les données citées pour démontrer les avantages des solutions sont extraites de la section « Comparaison des performances avant et après l'optimisation » du présent document sur les tests. Lire la section pour plus de détails.
2 Les données citées pour démontrer les avantages des solutions sont extraites de la section « Comparaison des performances avant et après l'optimisation » du présent document sur les tests. Lire la section pour plus de détails.
3 Le processeur Intel® Xeon® Platinum 8168 adopté par l'instance N3 polyvalente de Kingsoft Cloud a une fréquence de processeur de 2,70 GHz et utilise la DRAM DDR4. La version d'Intel® Optimization for TensorFlow utilisée dans les tests est la r1.12. La version d'Intel® Optimization for Caffe utilisée dans les tests est la 1.15. Les données qui sont ici utilisées dans les tests sont saisies à partir de l'instance d'hôte physique du Cloud avec 24 vCPU. Pour plus de détails, veuillez consulter le site https://marketplace.ksyun.com/products/10291