Accélération matérielleL'accélération matérielle consiste à confier une fonction spécifique effectuée par le processeur à un circuit intégré dédié qui effectuera cette fonction de façon plus efficace. Pendant longtemps, les calculs effectués par les ordinateurs grand public étaient entièrement pris en charge par le processeur central (CPU). Or, ce processeur s'avérait insuffisant dans un certain nombre de domaines. On eut l'idée de créer des circuits plus efficaces que le processeur pour ces tâches afin de le décharger.
Instruction set architectureIn computer science, an instruction set architecture (ISA), also called computer architecture, is an abstract model of a computer. A device that executes instructions described by that ISA, such as a central processing unit (CPU), is called an implementation. In general, an ISA defines the supported instructions, data types, registers, the hardware support for managing main memory, fundamental features (such as the memory consistency, addressing modes, virtual memory), and the input/output model of a family of implementations of the ISA.
Microprocesseur à jeu d'instruction étenduUn microprocesseur à jeu d'instruction étendu (, CISC) désigne un microprocesseur possédant un jeu d'instructions comprenant de très nombreuses instructions . L'architecture CISC est opposée à l'architecture RISC qui au contraire, limite ses instructions à l'essentiel afin de réduire la quantité de transistors. Le premier microprocesseur est l'Intel 4004, d'architecture 4 bits, sorti en 1971, suivi de l'Intel 8008, d'architecture , sorti en 1972.
Parallélisme (informatique)vignette|upright=1|Un des éléments de Blue Gene L cabinet, un des supercalculateurs massivement parallèles les plus rapides des années 2000. En informatique, le parallélisme consiste à mettre en œuvre des architectures d'électronique numérique permettant de traiter des informations de manière simultanée, ainsi que les algorithmes spécialisés pour celles-ci. Ces techniques ont pour but de réaliser le plus grand nombre d'opérations en un temps le plus petit possible.
Matériel librevignette|Zynthian, un projet de synthétiseur musical libre Le matériel libre, matériel ouvert ou matériel open source désigne, par analogie avec le logiciel libre et le logiciel open source, les technologies des matériels et produits physiques développés selon les principes des ressources libres de droits ou sous licence libre. . Chris Anderson, rédacteur en chef de Wired et auteur de la longue traîne, affirme que et évoque la voiture libre Rally Fighter, une des premières voitures de course open source (ses spécifications sont « libres »), développée de façon communautaire, par production participative.
Matériel informatiqueUn matériel informatique (en anglais : hardware) est une pièce ou composant d'un appareil informatique. C'est la partie physique de l’informatique elle est appairée avec le logiciel (software ou firmware). Il y a des composants situés à l'intérieur de l'appareil qui sont indispensables à son fonctionnement et, d'autres secondaires disposées à l'extérieur (les périphériques). Les pièces intérieures sont, la plupart du temps, montées sur des circuits imprimés.
Microprocesseur multi-cœurvignette|Un processeur quad-core AMD Opteron. vignette|L’Intel Core 2 Duo E6300 est un processeur double cœur. Un microprocesseur multi-cœur (multi-core en anglais) est un microprocesseur possédant plusieurs cœurs physiques fonctionnant simultanément. Il se distingue d'architectures plus anciennes (360/91) où un processeur unique commandait plusieurs circuits de calcul simultanés. Un cœur (en anglais, core) est un ensemble de circuits capables d’exécuter des programmes de façon autonome.
Cycles per instructionIn computer architecture, cycles per instruction (aka clock cycles per instruction, clocks per instruction, or CPI) is one aspect of a processor's performance: the average number of clock cycles per instruction for a program or program fragment. It is the multiplicative inverse of instructions per cycle. The average of Cycles Per Instruction in a given process (CPI) is defined by the following weighted average: Where is the number of instructions for a given instruction type , is the clock-cycles for that instruction type and is the total instruction count.
Instruction-level parallelismInstruction-level parallelism (ILP) is the parallel or simultaneous execution of a sequence of instructions in a computer program. More specifically ILP refers to the average number of instructions run per step of this parallel execution. ILP must not be confused with concurrency. In ILP there is a single specific thread of execution of a process. On the other hand, concurrency involves the assignment of multiple threads to a CPU's core in a strict alternation, or in true parallelism if there are enough CPU cores, ideally one core for each runnable thread.
Pipeline (architecture des processeurs)330px|droite|Plan d'un pipeline générique à trois étapes En microarchitecture, un pipeline (ou chaîne de traitement), est l'élément d'un processeur dans lequel l'exécution des instructions est découpée en plusieurs étapes. Le premier ordinateur à utiliser cette technique est l'IBM Stretch, conçu en 1961. Avec un pipeline, le processeur peut commencer à exécuter une nouvelle instruction sans attendre que la précédente soit terminée. Chacune des étapes d’un pipeline est appelé étage.
Task parallelismTask parallelism (also known as function parallelism and control parallelism) is a form of parallelization of computer code across multiple processors in parallel computing environments. Task parallelism focuses on distributing tasks—concurrently performed by processes or threads—across different processors. In contrast to data parallelism which involves running the same task on different components of data, task parallelism is distinguished by running many different tasks at the same time on the same data.
Cell (processeur)Le Cell est un processeur conçu conjointement par IBM, Sony et Toshiba, révélé en . Il équipe notamment la console de jeu vidéo PlayStation 3 de Sony. Il est envisagé de produire également des ordinateurs à base de Cell chez IBM, et Toshiba (Qosmio F50/55 et G50/55).
Processeurthumb|La puce d'un microprocesseur Intel 80486DX2 dans son boîtier (taille réelle : ). Un processeur (ou unité centrale de calcul, UCC ; en anglais central processing unit, CPU) est un composant présent dans de nombreux dispositifs électroniques qui exécute les instructions machine des programmes informatiques. Avec la mémoire, c'est notamment l'une des fonctions qui existent depuis les premiers ordinateurs. Un processeur construit en un seul circuit intégré est un microprocesseur.
Logiciel de traitement de textethumb|Écran du traitement de texte LibreOffice Writer. thumb|Écran du traitement de texte KWord. Un logiciel de traitement de texte permet d'utiliser un ordinateur pour rédiger, corriger et imprimer des documents écrits tels que des lettres, des articles de presse, des factures, des contrats ou encore de la publicité. Le traitement de texte est une des applications les plus populaires. Dans sa forme la plus simple, un programme permet de faire exactement ce qui est fait avec une machine à écrire.
Single instruction multiple dataSingle Instruction on Multiple Data (signifiant en anglais : « instruction unique, données multiples »), ou SIMD, est une des quatre catégories d'architecture définies par la taxonomie de Flynn en 1966 et désigne un mode de fonctionnement des ordinateurs dotés de capacités de parallélisme. Dans ce mode, la même instruction est appliquée simultanément à plusieurs données pour produire plusieurs résultats.
Processeur vectorielvignette|Processeur vectoriel d'un supercalculateur Cray-1. Un processeur vectoriel est un processeur possédant diverses fonctionnalités architecturales lui permettant d'améliorer l’exécution de programmes utilisant massivement des tableaux, des matrices, et qui permet de profiter du parallélisme inhérent à l'usage de ces derniers. Développé pour des applications scientifiques et exploité par les machines Cray et les supercalculateurs qui lui feront suite, ce type d'architecture a rapidement montré ses avantages pour des applications grand public (on peut citer la manipulation d'images).
Couche d'abstraction matérielleEn informatique, et plus particulièrement en architecture, une couche d'abstraction matérielle (abrégé en HAL pour hardware abstraction layer) est un logiciel intermédiaire entre le système d'exploitation et le matériel informatique. Il offre des fonctions standardisées de manipulation du matériel informatique tout en cachant les détails techniques de la mise en œuvre. De nombreux producteurs de système d'exploitation incluent une couche d'abstraction matérielle dans leurs produits.
SIMTSIMT (de l'Single Instruction, Multiple Threads, selon la taxonomie de Flynn) est une amélioration de SIMD (de l'Single Instruction, Multiple Data) qui permettait sur des processeur arithmétique spécialisés de faire des calculs sur plusieurs données en une seule instruction, en l'adaptant au calcul multithread (c'est-à-dire, comportant plusieurs files d'exécution). MIMD (multiple instruction, multiple data) SIMD (Single Instruction, Multiple Data) SPMD (Single Pogram, Multiple Data) Processeur vectoriel Cat
Grille informatiqueUne grille informatique (en anglais, grid) est une infrastructure virtuelle constituée d'un ensemble de ressources informatiques potentiellement partagées, distribuées, hétérogènes, délocalisées et autonomes. Une grille est en effet une infrastructure, c'est-à-dire des équipements techniques d'ordres matériel et logiciel. Cette infrastructure est qualifiée de virtuelle car les relations entre les entités qui la composent n'existent pas sur le plan matériel mais d'un point de vue logique.
No instruction set computingNo instruction set computing (NISC) is a computing architecture and compiler technology for designing highly efficient custom processors and hardware accelerators by allowing a compiler to have low-level control of hardware resources. NISC is a statically scheduled horizontal nanocoded architecture (SSHNA). The term "statically scheduled" means that the operation scheduling and Hazard handling are done by a compiler. The term "horizontal nanocoded" means that NISC does not have any predefined instruction set or microcode.