Parallel algorithmIn computer science, a parallel algorithm, as opposed to a traditional serial algorithm, is an algorithm which can do multiple operations in a given time. It has been a tradition of computer science to describe serial algorithms in abstract machine models, often the one known as random-access machine. Similarly, many computer science researchers have used a so-called parallel random-access machine (PRAM) as a parallel abstract machine (shared-memory).
Central processing unitA central processing unit (CPU)—also called a central processor or main processor—is the most important processor in a given computer. Its electronic circuitry executes instructions of a computer program, such as arithmetic, logic, controlling, and input/output (I/O) operations. This role contrasts with that of external components, such as main memory and I/O circuitry, and specialized coprocessors such as graphics processing units (GPUs). The form, design, and implementation of CPUs have changed over time, but their fundamental operation remains almost unchanged.
Larrabee (informatique)thumb|Schéma de l'architecture GPU Larrabee. Le projet Larrabee d'Intel Corporation fut la réaction à l'importance croissante des processeurs graphiques (GPU) dans le domaine du calcul générique. Cette carte fille a été annoncée en 2008, et fut quasiment abandonnée en et définitivement pour le grand public en . Auparavant, les GPU étaient principalement ou uniquement dédiés au calcul graphique, c'est-à-dire à l'affichage d'objets 3D à l'écran sous forme de triangles.
GeForceGeForce est une série de cartes graphiques fabriquées par Nvidia depuis 1999. La première GeForce était la GeForce 256. Lancée en automne 1999, elle fut la première carte vidéo grand public à pouvoir prendre en charge l’intégralité des calculs graphiques. De nombreuses séries et évolutions ont été commercialisées, et restent parmi les produits les plus connus en ce domaine.
Kepler (architecture de carte graphique)L'architecture Kepler a été développée par NVidia pour ses cartes graphiques. Elle est censée doubler les performances par watt par rapport à Fermi, l'architecture précédente, ce qui permet de l'utiliser dans des cartes graphiques mobiles. La première carte graphique utilisant cette architecture est la GTX 680, utilisant le processeur graphique GK 104.
Fermi (architecture de carte graphique)Fermi est le nom de code d'une architecture de carte graphique de la société NVidia. Les premières cartes, gravées en , sont sorties en mars 2010 et comportent plus de de transistors, soit plus qu'un micro-processeur courant. Certaines GeForce M disposent de processeurs gravés en au lieu de . NVidia sort la GTX 480, la première carte graphique à utiliser l'architecture Fermi avec le GF 100. Même si la carte est la plus puissante du moment elle souffre d'une surconsommation, de températures très élevées, tout en étant bruyante.
ROCmROCm is an Advanced Micro Devices (AMD) software stack for graphics processing unit (GPU) programming. ROCm spans several domains: general-purpose computing on graphics processing units (GPGPU), high performance computing (HPC), heterogeneous computing. It offers several programming models: HIP (GPU-kernel-based programming), OpenMP/Message Passing Interface (MPI) (directive-based programming), OpenCL. ROCm is free, libre and open-source software (except the GPU firmware blobs), it is distributed under various licenses.
Intel HD GraphicsLes HD Graphics sont une gamme de processeurs graphiques conçus par Intel et intégrés d'abord dans ses microprocesseurs (à partir des modèles Clarkdale et Arrandale sortis début 2010). Ils succèdent alors à la série des GMA qui étaient des processeurs graphiques physiquement indépendants du microprocesseur, faisant partie du chipset de la carte mère. Par la suite, les HD Graphics ont également intégré les systèmes sur une puce du fondeur (avec la série des Atom Z3000 sortis au quatrième trimestre 2013).
Memory poolMemory pools, also called fixed-size blocks allocation, is the use of pools for memory management that allows dynamic memory allocation. Dynamic memory allocation can, and has been achieved trough the use of techniques such as malloc and C++'s operator new; although established and reliable implementations, these suffer from fragmentation because of variable block sizes, it is not recommendable to use them in a real time system due to performance. A more efficient solution is preallocating a number of memory blocks with the same size called the memory pool.