Dans cet article, nous ferons une comparaison TPU vs GPU. Mais avant de plonger, voici ce que vous devez savoir.
Les technologies d'apprentissage automatique et d'intelligence artificielle accélèrent le développement d'applications intelligentes. À cette fin, les fabricants de semi-conducteurs continuent de créer des accélérateurs et des processeurs, notamment des TPU et des CPU, pour gérer des applications plus complexes.
Certains utilisateurs ont du mal à comprendre quand un TPU est recommandé et quand utiliser un GPU pour effectuer leurs tâches informatiques.
Le GPU, également connu sous le nom d'unité de traitement graphique, est la carte vidéo de votre PC qui vous offre une expérience PC visuelle et immersive. Par exemple, si votre PC ne détecte pas le GPU, vous pouvez suivre des étapes simples.
Pour mieux comprendre ces situations, nous devons également clarifier ce qu'est un TPU et comment il se compare à un GPU.
Un TPU ou Tensor Processing Unit est un circuit intégré spécifique à une application (IC) pour une application spécifique, également connu sous le nom d'ASIC (Application Specific Integrated Circuit). Google a créé le TPU à partir de zéro, a commencé à l'utiliser en 2015 et l'a mis à la disposition du public en 2018.
TPU disponible en puce secondaire ou en version cloud. Pour accélérer l'apprentissage automatique des réseaux de neurones à l'aide du logiciel TensorFlow, les Cloud TPU résolvent des opérations matricielles et vectorielles complexes à une vitesse fulgurante.
Avec TensorFlow, l'équipe Google Brain a développé une plateforme d'apprentissage automatique open source qui permet aux chercheurs, aux développeurs et aux entreprises de créer et d'exploiter des modèles d'IA à l'aide du matériel Cloud TPU.
Lors de la formation de modèles de réseaux neuronaux complexes et robustes, le TPU réduit le temps nécessaire pour atteindre des valeurs précises. Cela signifie que la formation d’un modèle d’apprentissage profond, qui peut prendre des semaines, prend une fraction du temps nécessaire à l’aide de GPU.
Le TPU et le GPU sont-ils identiques ?
Ils sont très différents sur le plan architectural. L'unité de traitement graphique est un processeur à part entière, bien qu'elle soit intégrée à une programmation numérique vectorisée. Les GPU sont en fait la prochaine génération de supercalculateurs Cray.
Le TPU est un coprocesseur qui n'exécute pas d'instructions lui-même ; le code est exécuté sur le CPU, ce qui fournit un flux de petites opérations au TPU.
Quand dois-je utiliser le TPU ?
Les TPU dans le cloud sont adaptés à des applications spécifiques. Dans certains cas, vous préférerez peut-être utiliser un GPU ou un CPU pour effectuer des tâches d'apprentissage automatique. En général, les principes suivants peuvent vous aider à évaluer si un TPU est le meilleur choix pour votre charge de travail :
Passons maintenant directement à la comparaison TPU vs GPU.
Le TPU n'est pas un élément matériel très complexe et ressemble à un moteur de traitement du signal pour les applications radar plutôt qu'à une architecture traditionnelle dérivée du X86.
Bien qu'il existe de nombreuses multiplications et divisions matricielles, il s'apparente plus à un coprocesseur qu'à un GPU ; il exécute uniquement les commandes reçues par l'hôte.
Comme il y a tellement de poids à saisir dans le composant de multiplication matricielle, la DRAM du TPU fonctionne en parallèle comme une seule unité.
De plus, étant donné que le TPU ne peut effectuer que des opérations matricielles, la carte TPU est connectée au système hôte basé sur le CPU pour effectuer des tâches que le TPU ne peut pas gérer.
L'hôte est responsable du transfert des données vers le TPU, du prétraitement et de l'obtention d'informations détaillées à partir du stockage cloud.
Le GPU se soucie davantage de disposer de cœurs disponibles sur lesquels les applications peuvent travailler que d'accéder aux caches à faible latence.
De nombreux PC (clusters de processeurs) dotés de plusieurs SM (Streaming Multiprocessors) deviennent des gadgets à GPU unique, chaque SM contient une couche de cache d'instructions de premier niveau et les cœurs qui l'accompagnent.
Un SM utilise généralement deux couches partagées en cache et une couche privée en cache avant de récupérer les données de la mémoire GDDR-5 globale. L'architecture GPU peut tolérer la latence de la mémoire.
Le GPU fonctionne avec un nombre minimum de niveaux de cache mémoire. Cependant, comme le GPU dispose de plus de transistors dédiés au traitement, il se soucie moins du temps nécessaire pour accéder aux données en mémoire.
Étant donné que le GPU est toujours occupé par suffisamment de calculs, les éventuels retards d'accès à la mémoire sont masqués.
Ce TPU original génère une inférence ciblée à l'aide d'un modèle appris plutôt que d'un modèle entraîné.
Les TPU sont 15 à 30 fois plus rapides que les GPU et CPU actuels sur les applications d'IA commerciales utilisant l'inférence de réseau neuronal.
De plus, le TPU est très économe en énergie, avec des valeurs TOPS/Watt augmentées de 30 à 80 fois.
Ainsi, lorsque vous effectuez une comparaison de vitesse entre TPU et GPU, les chances sont en faveur de l'unité de traitement Tensor.
Le TPU est une machine de traitement tensoriel conçue pour accélérer les calculs de graphiques Tensorflow.
Chaque TPU offre jusqu'à 64 Go de mémoire à large bande passante et 180 téraflops de performances en virgule flottante sur une seule carte.
La comparaison entre le GPU Nvidia et le TPU est présentée ci-dessous. L'axe Y représente le nombre de photos par seconde, tandis que l'axe X représente les différents modèles.
Voici les temps de formation pour le CPU et le GPU utilisant différentes tailles de lots et itérations par époque :
Accélérateur | GPU (NVIDIA K80) | Polyuréthane thermoplastique |
Précision d'entraînement (%) | 96.5 | 94.1 |
Précision de la vérification (%) | 65,1 | 68,6 |
Durée par itération (ms) | 69 | 173 |
Durée totale (minutes) | 3072 | |
Itérations/époque : 1000, Taille du lot : 100, Époques totales : 25, Paramètres : 1,84 M et Type de modèle : Keras Mobilenet V1 (alpha 0,75) |
97,4 | 96,9 | |
45,2 | 45,3 | |
185 | 252 | |
18 | 25 | |
16 | 21 | |
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!