Table des matières
Les défis auxquels sont confrontées les installations technologiques d'apprentissage automatique
Solutions et objectifs
Communauté des leaders de l'IA/ML
Écosystème OpenXLA : performances, évolutivité et portabilité
Principaux points forts d'OpenXLA
Maison Périphériques technologiques IA Développement d'IA unifié : Google OpenXLA est open source et intègre tous les frameworks et puces d'IA

Développement d'IA unifié : Google OpenXLA est open source et intègre tous les frameworks et puces d'IA

Apr 29, 2023 am 11:55 AM
机器学习 ai

Lors de l'événement Google Cloud Next 2022 en octobre de l'année dernière, le projet OpenXLA a officiellement fait surface, un cadre d'IA open source promu par Google et des entreprises technologiques dont Alibaba, AMD, Arm, Amazon, Intel, NVIDIA et d'autres entreprises technologiques. La coopération s'engage à rassembler différents cadres d'apprentissage automatique pour permettre aux développeurs d'apprentissage automatique d'acquérir la capacité de choisir de manière proactive les cadres et le matériel.

Mercredi, Google a annoncé que le projet OpenXLA était officiellement open source.

Développement dIA unifié : Google OpenXLA est open source et intègre tous les frameworks et puces dIA

Lien du projet : https://github.com /openxla/xla

OpenXLA accélère l'apprentissage automatique en créant un compilateur d'apprentissage automatique unifié qui fonctionne avec de nombreux cadres d'apprentissage automatique et plates-formes matérielles différents Livraison et fourniture d'applications une plus grande portabilité du code. Il s’agit d’un projet important pour la recherche et les applications de l’IA, et Jeff Dean en a également fait la promotion sur les réseaux sociaux.

Développement dIA unifié : Google OpenXLA est open source et intègre tous les frameworks et puces dIA

Aujourd'hui, le développement et le déploiement du machine learning sont entravés par une infrastructure fragmentée. La plupart de ces infrastructures peuvent varier selon le framework, le matériel et le cas d'utilisation. Cet isolement limite la vitesse à laquelle les développeurs peuvent travailler et crée des obstacles à la portabilité, à l'efficacité et à la production des modèles.

Le 8 mars, Google et d'autres ont franchi une étape importante vers la suppression de ces barrières avec l'ouverture du projet OpenXLA, qui comprend les référentiels XLA, StableHLO et IREE. étape.

OpenXLA est un écosystème de compilateur ML open source développé conjointement par les leaders de l'industrie de l'IA/apprentissage automatique. Parmi les contributeurs figurent Alibaba, AWS, AMD, Apple, Arm, Cerebras, Google, Graphcore, Hugging Face, Intel, Meta et Nvidia. Il permet aux développeurs de compiler et d'optimiser des modèles à partir de tous les principaux frameworks d'apprentissage automatique pour une formation efficace et une utilisation sur une variété de matériels. Les développeurs utilisant OpenXLA peuvent observer des améliorations significatives en termes de temps de formation, de débit, de latence de service et, en fin de compte, de coûts de publication et de calcul.

Les défis auxquels sont confrontées les installations technologiques d'apprentissage automatique

Alors que la technologie de l'IA entre dans la phase pratique, les équipes de développement de nombreux secteurs utilisent l'apprentissage automatique pour répondre aux besoins réels -des défis mondiaux tels que la prévision et la prévention des maladies, les expériences d'apprentissage personnalisées et l'exploration de la physique des trous noirs.

Avec la croissance exponentielle du nombre de paramètres de modèle et la quantité de calcul requise pour les modèles d'apprentissage profond doublant tous les six mois, les développeurs cherchent à maximiser les performances et l'utilisation de l'infrastructure. Un grand nombre d'équipes exploitent une variété de modèles matériels, depuis les ASIC économes en énergie spécifiques à l'apprentissage automatique dans le centre de données jusqu'aux processeurs de pointe IA qui offrent des temps de réponse plus rapides. Par conséquent, afin d’améliorer l’efficacité, ces dispositifs matériels utilisent des algorithmes et des bibliothèques de logiciels personnalisés et uniques.

Mais d'un autre côté, s'il n'existe pas de compilateur universel pour relier les différents périphériques matériels aux multiples frameworks utilisés aujourd'hui (tels que TensorFlow, PyTorch), on le fera besoin Il faut beaucoup d’efforts pour exécuter efficacement l’apprentissage automatique. En pratique, les développeurs doivent optimiser manuellement les opérations de modèle pour chaque cible matérielle. Cela signifie que l’utilisation de bibliothèques de logiciels personnalisées ou l’écriture de code spécifique à un appareil nécessite une expertise dans le domaine.

Il s'agit d'un résultat paradoxal. L'utilisation d'une technologie spécialisée pour améliorer l'efficacité entraîne des chemins isolés et non généralisables entre les frameworks et le matériel, ce qui entraîne des coûts de maintenance élevés et, par conséquent, un leadership. à la dépendance vis-à-vis d'un fournisseur, ce qui ralentit la progression du développement de l'apprentissage automatique.

Solutions et objectifs

Le projet OpenXLA fournit un compilateur ML de pointe qui s'adapte à la complexité de l'infrastructure ML. Ses principaux piliers sont les performances, l’évolutivité, la portabilité, la flexibilité et la facilité d’utilisation. Avec OpenXLA, nous aspirons à réaliser le plus grand potentiel de l’IA dans le monde réel en accélérant le développement et la fourniture de l’IA.

OpenXLA a pour objectif de :

  • Permettre aux développeurs de compiler et d'optimiser facilement n'importe quel modèle dans leur framework préféré pour une variété de matériels avec une API de compilateur unifiée qui fonctionne avec n'importe quel framework, accédant aux backends et aux optimisations d'appareils dédiés.
  • Fournit des performances de pointe pour les modèles actuels et émergents, et peut également être étendu à plusieurs hôtes et accélérateurs pour répondre aux contraintes du déploiement en périphérie et promu vers de nouvelles architectures de modèles à l'avenir.
  • Créez une plate-forme de compilateur d'apprentissage automatique en couches et évolutive qui fournit aux développeurs des composants basés sur MLIR qui peuvent être reconfigurés pour leurs cas d'utilisation uniques pour des flux de compilation personnalisés en fonction du matériel.

Communauté des leaders de l'IA/ML

Les défis auxquels nous sommes confrontés aujourd'hui en matière d'infrastructure d'apprentissage automatique sont énormes, et aucune organisation ne peut les résoudre efficacement seule. La communauté OpenXLA rassemble des développeurs et des leaders de l'industrie opérant à différents niveaux de la pile d'IA (des frameworks aux compilateurs, en passant par les environnements d'exécution et les puces) et est donc parfaitement adaptée pour remédier à la fragmentation que nous observons dans l'espace ML.

En tant que projet open source, OpenXLA adhère aux principes suivants :

  • Statut égal : les individus contribuent de manière égale quelle que soit leur affiliation. Les leaders techniques sont ceux qui consacrent le plus de temps et d’énergie.
  • Culture du respect : Tous les membres doivent respecter les valeurs et le code de conduite du projet, quelle que soit leur position dans la communauté.
  • Gouvernance évolutive et efficace : les petites équipes prennent des décisions fondées sur le consensus, avec des voies de mise à niveau claires mais rarement utilisées.
  • Transparence : toutes les décisions et justifications doivent être clairement visibles pour le public.

Écosystème OpenXLA : performances, évolutivité et portabilité

OpenXLA supprime les obstacles pour les développeurs de machine learning avec une chaîne d'outils modulaires prise en charge par tous les principaux frameworks via une interface de compilateur commune, tirant parti de la portabilité Standardise la représentation des modèles et fournit des compilateurs spécifiques au domaine avec de puissantes optimisations ciblées et spécifiques au matériel. La chaîne d'outils comprend XLA, StableHLO et IREE, qui exploitent tous MLIR : une infrastructure de compilateur qui permet aux modèles d'apprentissage automatique d'être représentés, optimisés et exécutés de manière cohérente sur le matériel.

Développement dIA unifié : Google OpenXLA est open source et intègre tous les frameworks et puces dIA

Principaux points forts d'OpenXLA

Portée des cas d'utilisation de l'apprentissage automatique

L'utilisation actuelle d'OpenXLA couvre la gamme de cas d'utilisation de ML, notamment AlphaFold de DeepMind, GPT2 et Swin Transformer sur Alibaba Cloud Wait pour que le modèle soit entièrement formé et effectuez une formation LLM multimodale sur Amazon.com. Des clients tels que Waymo exploitent OpenXLA pour l'inférence en temps réel dans le véhicule. De plus, OpenXLA est utilisé pour optimiser les services Stable Diffusion sur les machines locales équipées d'AMD RDNA™ 3.

Meilleures performances, prêtes à l'emploi

OpenXLA permet aux développeurs d'accélérer facilement les performances des modèles sans écrire de code spécifique à l'appareil. Il offre des capacités globales d'optimisation du modèle, notamment la simplification des expressions algébriques, l'optimisation de la disposition des données en mémoire et l'amélioration de la planification pour réduire l'utilisation maximale de la mémoire et les frais de communication. La fusion avancée d'opérateurs et la génération de noyau contribuent à améliorer l'utilisation des appareils et à réduire les besoins en bande passante mémoire.

Adaptez facilement les charges de travail

Développer des algorithmes de parallélisation efficaces prend du temps et nécessite une expertise. Avec des fonctionnalités telles que GSPMD, les développeurs n'ont qu'à annoter un sous-ensemble de tenseurs clés, qui peuvent ensuite être utilisés par le compilateur pour générer automatiquement des calculs parallèles. Cela élimine les efforts importants requis pour partitionner et paralléliser efficacement les modèles sur plusieurs hôtes matériels et accélérateurs.

Portabilité et optionnalité

OpenXLA fournit une prise en charge prête à l'emploi pour une variété de périphériques matériels, notamment les GPU AMD et NVIDIA, les processeurs x86 et les architectures Arm, ainsi que les accélérateurs ML tels que Google TPU, AWS Trainium et Inferentia, Graphcore IPU, Cerebras Wafer-Scale Engine, et bien plus encore. OpenXLA prend également en charge TensorFlow, PyTorch et JAX via StableHLO, une couche portable utilisée comme format d'entrée pour OpenXLA.

Flexibilité

OpenXLA offre aux utilisateurs la possibilité d'ajuster manuellement les points chauds du modèle. Les mécanismes d'extension tels que les appels personnalisés permettent aux utilisateurs d'écrire des primitives d'apprentissage en profondeur dans CUDA, HIP, SYCL, Triton et d'autres langages du noyau pour tirer pleinement parti des fonctionnalités matérielles. StableHLO est l'un des frameworks ML et des compilateurs ML. Une couche portable entre les. De plus, il peut être sérialisé en bytecode MLIR pour fournir des garanties de compatibilité. Tous les principaux frameworks ML (JAX, PyTorch, TensorFlow) peuvent produire StableHLO. En 2023, Google prévoit de travailler en étroite collaboration avec l'équipe PyTorch pour réaliser l'intégration avec PyTorch version 2.0.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn

Outils d'IA chauds

Undresser.AI Undress

Undresser.AI Undress

Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover

AI Clothes Remover

Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

AI Hentai Generator

AI Hentai Generator

Générez AI Hentai gratuitement.

Article chaud

R.E.P.O. Crystals d'énergie expliqués et ce qu'ils font (cristal jaune)
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Meilleurs paramètres graphiques
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Comment réparer l'audio si vous n'entendez personne
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25: Comment déverrouiller tout dans Myrise
4 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌

Outils chauds

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Comment résoudre MySQL ne peut pas être démarré Comment résoudre MySQL ne peut pas être démarré Apr 08, 2025 pm 02:21 PM

Il existe de nombreuses raisons pour lesquelles la startup MySQL échoue, et elle peut être diagnostiquée en vérifiant le journal des erreurs. Les causes courantes incluent les conflits de port (vérifier l'occupation du port et la configuration de modification), les problèmes d'autorisation (vérifier le service exécutant les autorisations des utilisateurs), les erreurs de fichier de configuration (vérifier les paramètres des paramètres), la corruption du répertoire de données (restaurer les données ou reconstruire l'espace de la table), les problèmes d'espace de la table InNODB (vérifier les fichiers IBDATA1), la défaillance du chargement du plug-in (vérification du journal des erreurs). Lors de la résolution de problèmes, vous devez les analyser en fonction du journal d'erreur, trouver la cause profonde du problème et développer l'habitude de sauvegarder régulièrement les données pour prévenir et résoudre des problèmes.

Mysql peut-il renvoyer JSON Mysql peut-il renvoyer JSON Apr 08, 2025 pm 03:09 PM

MySQL peut renvoyer les données JSON. La fonction JSON_Extract extrait les valeurs de champ. Pour les requêtes complexes, envisagez d'utiliser la clause pour filtrer les données JSON, mais faites attention à son impact sur les performances. Le support de MySQL pour JSON augmente constamment, et il est recommandé de faire attention aux dernières versions et fonctionnalités.

Comprendre les propriétés acides: les piliers d'une base de données fiable Comprendre les propriétés acides: les piliers d'une base de données fiable Apr 08, 2025 pm 06:33 PM

Une explication détaillée des attributs d'acide de base de données Les attributs acides sont un ensemble de règles pour garantir la fiabilité et la cohérence des transactions de base de données. Ils définissent comment les systèmes de bases de données gérent les transactions et garantissent l'intégrité et la précision des données même en cas de plantages système, d'interruptions d'alimentation ou de plusieurs utilisateurs d'accès simultanément. Présentation de l'attribut acide Atomicité: une transaction est considérée comme une unité indivisible. Toute pièce échoue, la transaction entière est reculée et la base de données ne conserve aucune modification. Par exemple, si un transfert bancaire est déduit d'un compte mais pas augmenté à un autre, toute l'opération est révoquée. BeginTransaction; UpdateAccountSsetBalance = Balance-100Wh

Master SQL Limit Clause: Contrôlez le nombre de lignes dans une requête Master SQL Limit Clause: Contrôlez le nombre de lignes dans une requête Apr 08, 2025 pm 07:00 PM

Clause SQLLIMIT: Contrôlez le nombre de lignes dans les résultats de la requête. La clause limite dans SQL est utilisée pour limiter le nombre de lignes renvoyées par la requête. Ceci est très utile lors du traitement de grands ensembles de données, des affichages paginés et des données de test, et peut améliorer efficacement l'efficacité de la requête. Syntaxe de base de la syntaxe: selectColumn1, Column2, ... FromTable_NamelimitNumber_Of_Rows; Number_OF_ROWS: Spécifiez le nombre de lignes renvoyées. Syntaxe avec décalage: selectColumn1, Column2, ... FromTable_Namelimitoffset, numéro_of_rows; décalage: sauter

Laravel Eloquent Orm dans Bangla Partial Model Search) Laravel Eloquent Orm dans Bangla Partial Model Search) Apr 08, 2025 pm 02:06 PM

Laravelelognent Model Retrieval: Faconttement l'obtention de données de base de données Eloquentorm fournit un moyen concis et facile à comprendre pour faire fonctionner la base de données. Cet article présentera en détail diverses techniques de recherche de modèles éloquentes pour vous aider à obtenir efficacement les données de la base de données. 1. Obtenez tous les enregistrements. Utilisez la méthode All () pour obtenir tous les enregistrements dans la table de base de données: usApp \ Modèles \ Post; $ poters = post :: all (); Cela rendra une collection. Vous pouvez accéder aux données à l'aide de Foreach Loop ou d'autres méthodes de collecte: ForEach ($ PostsAs $ POST) {echo $ post->

Comment optimiser les performances MySQL pour les applications de haute charge? Comment optimiser les performances MySQL pour les applications de haute charge? Apr 08, 2025 pm 06:03 PM

Guide d'optimisation des performances de la base de données MySQL dans les applications à forte intensité de ressources, la base de données MySQL joue un rôle crucial et est responsable de la gestion des transactions massives. Cependant, à mesure que l'échelle de l'application se développe, les goulots d'étranglement des performances de la base de données deviennent souvent une contrainte. Cet article explorera une série de stratégies efficaces d'optimisation des performances MySQL pour garantir que votre application reste efficace et réactive dans des charges élevées. Nous combinerons des cas réels pour expliquer les technologies clés approfondies telles que l'indexation, l'optimisation des requêtes, la conception de la base de données et la mise en cache. 1. La conception de l'architecture de la base de données et l'architecture optimisée de la base de données sont la pierre angulaire de l'optimisation des performances MySQL. Voici quelques principes de base: sélectionner le bon type de données et sélectionner le plus petit type de données qui répond aux besoins peut non seulement économiser un espace de stockage, mais également améliorer la vitesse de traitement des données.

La clé principale de MySQL peut être nul La clé principale de MySQL peut être nul Apr 08, 2025 pm 03:03 PM

La clé primaire MySQL ne peut pas être vide car la clé principale est un attribut de clé qui identifie de manière unique chaque ligne dans la base de données. Si la clé primaire peut être vide, l'enregistrement ne peut pas être identifié de manière unique, ce qui entraînera une confusion des données. Lorsque vous utilisez des colonnes entières ou des UUIdes auto-incrémentales comme clés principales, vous devez considérer des facteurs tels que l'efficacité et l'occupation de l'espace et choisir une solution appropriée.

Méthode de Navicat pour afficher le mot de passe de la base de données MongoDB Méthode de Navicat pour afficher le mot de passe de la base de données MongoDB Apr 08, 2025 pm 09:39 PM

Il est impossible de visualiser le mot de passe MongoDB directement via NAVICAT car il est stocké sous forme de valeurs de hachage. Comment récupérer les mots de passe perdus: 1. Réinitialiser les mots de passe; 2. Vérifiez les fichiers de configuration (peut contenir des valeurs de hachage); 3. Vérifiez les codes (May Code Hardcode).

See all articles