


Les détails techniques du cluster Byte Wanka sont divulgués : la formation GPT-3 s'est terminée en 2 jours et l'utilisation de la puissance de calcul a dépassé NVIDIA Megatron-LM
Au fur et à mesure que l'analyse technique de Sora se déroule, l'importance de l'infrastructure IA devient de plus en plus importante.
Un nouvel article de Byte et de l'Université de Pékin a attiré l'attention à ce moment-là :
L'article a révélé que le cluster Wanka construit par Byte peut compléter le modèle réduit GPT-3 (175B) en 1,75 jours ) formation .
Plus précisément, Byte a proposé un système de production appelé MegaScale, qui vise à résoudre les problèmes d'efficacité et de stabilité rencontrés lors de la formation de grands modèles sur le cluster Wanka.
Lors de la formation d'un grand modèle de langage de 175 milliards de paramètres sur 12 288 GPU, MegaScale a atteint une utilisation de la puissance de calcul de 55,2 % (MFU) , soit 1,34 fois celle de NVIDIA Megatron-LM.
Le document a également révélé qu'en septembre 2023, Byte a établi un GPU à architecture Ampere (A100/A800) cluster avec plus de 10 000 cartes et construit actuellement une architecture Hopper à grande échelle (H100/H800) grappe. .
Convient au système de production de cluster Wanka
À l'ère des grands modèles, l'importance du GPU n'a plus besoin d'être développée.
Mais la formation des grands modèles ne peut pas être démarrée directement lorsque le nombre de cartes est plein - lorsque l'échelle du cluster GPU atteint le niveau "10 000", comment parvenir à une formation efficace et stable est un défi en soi. problèmes d'ingénierie.
Le premier défi : l'efficacité.
La formation d'un grand modèle de langage n'est pas une simple tâche parallèle. Elle nécessite de distribuer le modèle entre plusieurs GPU, et ces GPU nécessitent une communication fréquente pour faire avancer conjointement le processus de formation. Outre la communication, des facteurs tels que l'optimisation des opérateurs, le prétraitement des données et la consommation de mémoire GPU ont tous un impact sur l'utilisation de la puissance de calcul (MFU) , un indicateur qui mesure l'efficacité de la formation.
MFU est le rapport entre le débit réel et le débit maximum théorique.
Le deuxième défi : la stabilité.
Nous savons que la formation de grands modèles de langage prend souvent beaucoup de temps, ce qui signifie également que les échecs et les retards pendant le processus de formation ne sont pas rares.
Le coût d'une panne est élevé, il est donc particulièrement important de savoir comment raccourcir le temps de récupération après panne.
Afin de relever ces défis, les chercheurs de ByteDance ont construit MegaScale et l'ont déployé dans le centre de données de Byte pour prendre en charge la formation de divers grands modèles.
MegaScale est amélioré sur la base de NVIDIA Megatron-LM.
Les améliorations spécifiques incluent la co-conception d'algorithmes et de composants système, l'optimisation du chevauchement de communication et de calcul, l'optimisation des opérateurs, l'optimisation du pipeline de données et le réglage des performances du réseau, etc. :
- Optimisation de l'algorithme : les chercheurs ont introduit un bloc transformateur parallélisé, un mécanisme d'attention à fenêtre coulissante (SWA) et un optimiseur LAMB dans l'architecture du modèle pour améliorer l'efficacité de la formation sans sacrifier la convergence du modèle.
- Chevauchement des communications : Sur la base de l'analyse spécifique des opérations de chaque unité de calcul en parallèle 3D (parallélisme des données, parallélisme des pipelines, parallélisme des tenseurs), les chercheurs ont conçu des stratégies techniques pour réduire efficacement les opérations d'exécution non critiques. paths Le retard provoqué réduit le temps d'itération de chaque tour dans la formation du modèle.
- Opérateurs efficaces : l'opérateur GEMM a été optimisé et des opérations telles que LayerNorm et GeLU ont été intégrées pour réduire la surcharge liée au lancement de plusieurs cœurs et optimiser les modèles d'accès à la mémoire.
- Optimisation du pipeline de données : optimisez le prétraitement et le chargement des données et réduisez le temps d'inactivité du GPU grâce au prétraitement asynchrone des données et à l'élimination des chargeurs de données redondants.
- Initialisation du groupe de communication collective : Optimisation du processus d'initialisation du cadre de communication multi-cartes NVIDIA NCCL en formation distribuée. Sans optimisation, le temps d'initialisation d'un cluster 2048-GPU est de 1047 secondes, qui peut être réduit à moins de 5 secondes après optimisation ; le temps d'initialisation d'un cluster GPU Wanka peut être réduit à moins de 30 secondes.
- Réglage des performances du réseau : analyse du trafic inter-machines en parallélisme 3D et conception de solutions techniques pour améliorer les performances du réseau, notamment la conception de la topologie du réseau, la réduction des conflits de hachage ECMP, le contrôle de la congestion et les paramètres de délai d'attente de retransmission.
- Tolérance aux pannes : Dans le cluster Wanka, les pannes logicielles et matérielles sont inévitables. Les chercheurs ont conçu un cadre de formation pour parvenir à une identification automatique des défauts et à une récupération rapide. Plus précisément, cela comprend le développement d'outils de diagnostic pour surveiller les composants et les événements du système, l'optimisation des processus de formation à la sauvegarde à haute fréquence aux points de contrôle, etc.
Le document mentionne que MegaScale peut détecter et réparer automatiquement plus de 90 % des pannes logicielles et matérielles.
Les résultats expérimentaux montrent que MegaScale a atteint 55,2 % de MFU lors de la formation d'un grand modèle de langage de 175 B sur 12 288 GPU, soit 1,34 fois l'utilisation de la puissance de calcul de Megatrion-LM.
Les résultats de la comparaison MFU de la formation d'un grand modèle de langage 530B sont les suivants :
One More Thing
Au moment même où ce document technique déclenchait la discussion, de nouvelles nouvelles sont apparues concernant le produit Sora basé sur les octets :
Capture d'écran Son outil vidéo d'IA similaire à Sora a lancé un test bêta sur invitation uniquement.
Il semble que les bases soient posées, alors attendez-vous avec impatience les produits grand modèle de Byte ?
Adresse papier : https://arxiv.org/abs/2402.15627
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!

Outils d'IA chauds

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

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

Undress AI Tool
Images de déshabillage gratuites

Clothoff.io
Dissolvant de vêtements AI

AI Hentai Generator
Générez AI Hentai gratuitement.

Article chaud

Outils chauds

Bloc-notes++7.3.1
Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise
Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1
Puissant environnement de développement intégré PHP

Dreamweaver CS6
Outils de développement Web visuel

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

Lors de la conversion des chaînes en objets dans vue.js, JSON.Parse () est préféré pour les chaînes JSON standard. Pour les chaînes JSON non standard, la chaîne peut être traitée en utilisant des expressions régulières et réduisez les méthodes en fonction du format ou du codé décodé par URL. Sélectionnez la méthode appropriée en fonction du format de chaîne et faites attention aux problèmes de sécurité et d'encodage pour éviter les bogues.

L'article présente le fonctionnement de la base de données MySQL. Tout d'abord, vous devez installer un client MySQL, tel que MySQLWorkBench ou le client de ligne de commande. 1. Utilisez la commande MySQL-UROot-P pour vous connecter au serveur et connecter avec le mot de passe du compte racine; 2. Utilisez Createdatabase pour créer une base de données et utilisez Sélectionner une base de données; 3. Utilisez CreateTable pour créer une table, définissez des champs et des types de données; 4. Utilisez InsertInto pour insérer des données, remettre en question les données, mettre à jour les données par mise à jour et supprimer les données par Supprimer. Ce n'est qu'en maîtrisant ces étapes, en apprenant à faire face à des problèmes courants et à l'optimisation des performances de la base de données que vous pouvez utiliser efficacement MySQL.

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.

Résumé: Il existe les méthodes suivantes pour convertir les tableaux de chaîne Vue.js en tableaux d'objets: Méthode de base: utilisez la fonction de carte pour convenir à des données formatées régulières. Gameplay avancé: l'utilisation d'expressions régulières peut gérer des formats complexes, mais ils doivent être soigneusement écrits et considérés. Optimisation des performances: Considérant la grande quantité de données, des opérations asynchrones ou des bibliothèques efficaces de traitement des données peuvent être utilisées. MEILLEUR PRATIQUE: Effacer le style de code, utilisez des noms de variables significatifs et des commentaires pour garder le code concis.

Traiter efficacement 7 millions d'enregistrements et créer des cartes interactives avec la technologie géospatiale. Cet article explore comment traiter efficacement plus de 7 millions d'enregistrements en utilisant Laravel et MySQL et les convertir en visualisations de cartes interactives. Exigences initiales du projet de défi: extraire des informations précieuses en utilisant 7 millions d'enregistrements dans la base de données MySQL. Beaucoup de gens considèrent d'abord les langages de programmation, mais ignorent la base de données elle-même: peut-il répondre aux besoins? La migration des données ou l'ajustement structurel est-il requis? MySQL peut-il résister à une charge de données aussi importante? Analyse préliminaire: les filtres et les propriétés clés doivent être identifiés. Après analyse, il a été constaté que seuls quelques attributs étaient liés à la solution. Nous avons vérifié la faisabilité du filtre et établi certaines restrictions pour optimiser la recherche. Recherche de cartes basée sur la ville

Afin de définir le délai d'expiration de Vue Axios, nous pouvons créer une instance AxiOS et spécifier l'option Timeout: dans les paramètres globaux: vue.prototype. $ Axios = axios.create ({timeout: 5000}); Dans une seule demande: ce. $ axios.get ('/ api / utilisateurs', {timeout: 10000}).

L'optimisation des performances MySQL doit commencer à partir de trois aspects: configuration d'installation, indexation et optimisation des requêtes, surveillance et réglage. 1. Après l'installation, vous devez ajuster le fichier my.cnf en fonction de la configuration du serveur, tel que le paramètre innodb_buffer_pool_size, et fermer query_cache_size; 2. Créez un index approprié pour éviter les index excessifs et optimiser les instructions de requête, telles que l'utilisation de la commande Explication pour analyser le plan d'exécution; 3. Utilisez le propre outil de surveillance de MySQL (ShowProcessList, Showstatus) pour surveiller la santé de la base de données, et sauvegarde régulièrement et organisez la base de données. Ce n'est qu'en optimisant en continu ces étapes que les performances de la base de données MySQL peuvent être améliorées.

Ingénieur backend à distance Emploi Vacant Société: Emplacement du cercle: Bureau à distance Type d'emploi: Salaire à temps plein: 130 000 $ - 140 000 $ Description du poste Participez à la recherche et au développement des applications mobiles Circle et des fonctionnalités publiques liées à l'API couvrant l'intégralité du cycle de vie de développement logiciel. Les principales responsabilités complètent indépendamment les travaux de développement basés sur RubyOnRails et collaborent avec l'équipe frontale React / Redux / Relay. Créez les fonctionnalités de base et les améliorations des applications Web et travaillez en étroite collaboration avec les concepteurs et le leadership tout au long du processus de conception fonctionnelle. Promouvoir les processus de développement positifs et hiérarchiser la vitesse d'itération. Nécessite plus de 6 ans de backend d'applications Web complexe
