Concept

General-purpose processing on graphics processing units

GPGPU est l'abréviation de general-purpose computing on graphics processing units, c'est-à-dire calcul générique sur processeur graphique. L'objectif de tels calculs est de bénéficier de la capacité de traitement parallèle des processeurs graphiques. Avant l'arrivée des GPGPU, le CPU, processeur central de l'ordinateur, traitait la plupart des opérations lourdes en calcul comme les simulations physiques, le rendu hors-ligne pour les films, les calculs de risques pour les institutions financières, la prévision météorologique, l'encodage de fichier vidéo et son Intel avec ses 80 % de parts de marché sur les CPU dominait donc très largement tous les besoins en calcul et pouvait en extraire de substantielles marges. Certains de ces calculs lourds sont cependant facilement parallélisables et peuvent donc bénéficier d'une architecture pensée pour le calcul parallèle. La plupart des architectures parallèles étaient lourdes, chères et s'adressaient à un marché de niche jusqu'à ce que le GPU s'impose comme un acteur important du calcul parallèle. Le GPU est un produit grand public avec une large diffusion grâce aux débouchés des jeux vidéo, ce qui permet d'en réduire les coûts par rapport à une architecture trop spécialisée. Une architecture relativement bon marché et taillée pour le calcul parallèle au point d'afficher des performances parfois supérieure à par rapport à un CPU haut de gamme de dernière génération. Si les premiers GPU étaient à fonctions fixes, ils ont évolué pour devenir programmables. Ainsi depuis la NVIDIA GeForce 3 qui implémente les Pixels shaders 1.1, les processeurs graphiques disposent d'une unité de géométrie programmable. Et depuis la AMD Radeon R300 qui implémente les Pixels shaders 2.0, le calcul se fait sur des nombres flottants et plus seulement sur des nombres entiers. Les pilotes libres de cartes graphiques AMD Radeon pour Linux recourent aux shaders pour accélérer le décodage vidéo (voir Video Acceleration API). CUDA de NVIDIA ATI Stream de AMD OpenCL de Khronos Group Programmation sur Ca

À propos de ce résultat
Cette page est générée automatiquement et peut contenir des informations qui ne sont pas correctes, complètes, à jour ou pertinentes par rapport à votre recherche. Il en va de même pour toutes les autres pages de ce site. Veillez à vérifier les informations auprès des sources officielles de l'EPFL.
Cours associés (15)
CS-307: Introduction to multiprocessor architecture
Multiprocessors are a core component in all types of computing infrastructure, from phones to datacenters. This course will build on the prerequisites of processor design and concurrency to introduce
MATH-454: Parallel and high-performance computing
This course provides insight into a broad variety of High Performance Computing (HPC) concepts and the majority of modern HPC architectures. Moreover, the student will learn to have a feeling about wh
CS-470: Advanced computer architecture
The course studies techniques to exploit Instruction-Level Parallelism (ILP) statically and dynamically. It also addresses some aspects of the design of domain-specific accelerators. Finally, it explo
Afficher plus

Graph Chatbot

Chattez avec Graph Search

Posez n’importe quelle question sur les cours, conférences, exercices, recherches, actualités, etc. de l’EPFL ou essayez les exemples de questions ci-dessous.

AVERTISSEMENT : Le chatbot Graph n'est pas programmé pour fournir des réponses explicites ou catégoriques à vos questions. Il transforme plutôt vos questions en demandes API qui sont distribuées aux différents services informatiques officiellement administrés par l'EPFL. Son but est uniquement de collecter et de recommander des références pertinentes à des contenus que vous pouvez explorer pour vous aider à répondre à vos questions.