human
Comment fonctionne une carte vidéo ? Points bonus si vous l'expliquez dans un thème de conte de fées. Explique comme si j'avais cinq ans.
gpt
Un GPU est comme un CPU sauf qu'il a un nombre limité d'opérations adaptées spécifiquement aux graphiques. Ce qui est cool, c'est qu'il effectue la plupart de ses calculs en parallèle, vous pouvez donc faire beaucoup de choses à la fois pour produire des images très rapidement. Un processeur est meilleur pour des calculs plus généraux. Voici une réponse à une question similaire que j'ai trouvée sur superutilisateur > TL; réponse DR : les GPU ont beaucoup plus de cœurs de processeur que de CPU, mais parce que chaque cœur de GPU fonctionne beaucoup plus lentement qu'un cœur de CPU et n'a pas les fonctionnalités nécessaires pour les systèmes d'exploitation modernes , ils ne sont pas appropriés pour effectuer la plupart des traitements informatiques quotidiens . Ils sont particulièrement adaptés aux opérations gourmandes en calcul telles que le traitement vidéo et les simulations physiques. --> GPGPU est encore un concept relativement nouveau. Les GPU étaient initialement utilisés uniquement pour le rendu des graphiques ; Au fur et à mesure que la technologie avançait, le grand nombre de cœurs dans les GPU par rapport aux CPU a été exploité en développant des capacités de calcul pour les GPU afin qu'ils puissent traiter simultanément de nombreux flux parallèles de données, quelles que soient ces données. Alors que les GPU peuvent avoir des centaines voire des milliers de processeurs de flux, ils fonctionnent chacun plus lentement qu'un cœur de CPU et ont moins de fonctionnalités (même s'ils sont complets et peuvent être programmés pour exécuter n'importe quel programme qu'un CPU peut exécuter). Les fonctionnalités absentes des GPU incluent les interruptions et la mémoire virtuelle, qui sont nécessaires pour implémenter un système d'exploitation moderne. En d'autres termes, les processeurs et les GPU ont des architectures sensiblement différentes qui les rendent mieux adaptés à différentes tâches. Un GPU peut gérer de grandes quantités de données dans de nombreux flux, en effectuant des opérations relativement simples sur ceux-ci, mais il est mal adapté à un traitement lourd ou complexe sur un seul ou quelques flux de données. Un processeur est beaucoup plus rapide sur une base par cœur (en termes d'instructions par seconde) et peut effectuer plus facilement des opérations complexes sur un seul ou quelques flux de données, mais ne peut pas gérer efficacement plusieurs flux simultanément. En conséquence, les GPU ne sont pas adaptés pour gérer des tâches qui ne bénéficient pas de manière significative ou ne peuvent pas être parallélisées, y compris de nombreuses applications grand public courantes telles que les traitements de texte. De plus, les GPU utilisent une architecture fondamentalement différente ; il faudrait programmer une application spécifiquement pour un GPU pour qu'elle fonctionne, et des techniques très différentes sont nécessaires pour programmer les GPU. Ces différentes techniques comprennent de nouveaux langages de programmation, des modifications de langages existants et de nouveaux paradigmes de programmation mieux adaptés pour exprimer un calcul comme une opération parallèle devant être effectuée par de nombreux processeurs de flux. Pour plus d'informations sur les techniques nécessaires à la programmation des GPU, consultez les articles de Wikipédia sur le traitement de flux et le calcul parallèle. Les GPU modernes sont capables d'effectuer des opérations vectorielles et de l'arithmétique à virgule flottante, avec les cartes les plus récentes capables de manipuler des nombres à virgule flottante à double précision. Des cadres tels que CUDA et OpenCL permettent d'écrire des programmes pour les GPU, et la nature des GPU les rend plus adaptés aux opérations hautement parallélisables, comme dans le calcul scientifique, où une série de cartes de calcul GPU spécialisées peut être un remplacement viable pour une petite cluster de calcul comme dans les superordinateurs personnels NVIDIA Tesla . Les consommateurs disposant de GPU modernes et expérimentés avec Folding@home peuvent les utiliser pour contribuer aux clients GPU, qui peuvent effectuer des simulations de repliement de protéines à des vitesses très élevées et contribuer davantage au projet (assurez-vous de lire d'abord les FAQ, en particulier celles liées à GPU). Les GPU peuvent également permettre une meilleure simulation physique dans les jeux vidéo à l'aide de PhysX, accélérer l'encodage et le décodage vidéo et effectuer d'autres tâches gourmandes en ressources informatiques. Ce sont ces types de tâches que les GPU sont les plus aptes à effectuer. AMD est à l'avant-garde d'une conception de processeur appelée APU (Accelerated Processing Unit) qui combine des cœurs de CPU x86 conventionnels avec des GPU. Cela pourrait permettre aux composants CPU et GPU de fonctionner ensemble et d'améliorer les performances sur les systèmes avec un espace limité pour les composants séparés. Au fur et à mesure que la technologie progresse, nous verrons un degré croissant de convergence de ces parties autrefois séparées. Cependant, de nombreuses tâches effectuées par les systèmes d'exploitation et les applications PC sont encore mieux adaptées aux processeurs, et beaucoup de travail est nécessaire pour accélérer un programme utilisant un GPU. Étant donné qu'un grand nombre de logiciels existants utilisent l'architecture x86 et que les GPU nécessitent des techniques de programmation différentes et manquent de plusieurs fonctionnalités importantes nécessaires aux systèmes d'exploitation, une transition générale du CPU au GPU pour l'informatique quotidienne est extrêmement difficile. URL_0