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.
Intel CoreIntel Core is a line of streamlined midrange consumer, workstation and enthusiast computer central processing units (CPUs) marketed by Intel Corporation. These processors displaced the existing mid- to high-end Pentium processors at the time of their introduction, moving the Pentium to the entry level. Identical or more capable versions of Core processors are also sold as Xeon processors for the server and workstation markets. The lineup of Core processors includes the Intel Core i3, Intel Core i5, Intel Core i7, and Intel Core i9, along with the X-series of Intel Core CPUs.
XeonUn microprocesseur Xeon est un microprocesseur fabriqué par Intel dont le jeu d'instructions est x86 et conçu pour les stations de travail et les serveurs informatiques. Le nom « Xeon » est une marque commerciale apparue le pour les Pentium . D'abord utilisée en association avec la marque Pentium (Pentium Xeon, Pentium Xeon), elle a été utilisée seule à partir du Pentium 4 (Xeon 1.4, Xeon 3040, etc.). Les versions Xeon tirent généralement leurs performances supérieures d'une mémoire cache plus grande que les versions grand public des microprocesseurs d'Intel.
Exécution dans le désordreL'exécution dans le désordre ( en anglais) consiste à réorganiser l'ordre dans lequel les instructions vont s'exécuter dans le processeur. Ces instructions ne sont alors pas forcément exécutées dans l'ordre dans lequel elles apparaissent dans le programme. Cela permet de mieux exploiter les ressources d'un processeur et ainsi de gagner du temps de calcul par rapport à l'exécution dans l'ordre () qui consiste à exécuter les instructions dans l'ordre prévu par le compilateur.
Simultaneous multithreadingLe simultaneous multithreading (SMT) est une technique informatique datant des années 1960. Il s'agit d'une forme de multithreading, une technique qui consiste, comme le symmetric multiprocessing (SMP), à augmenter le TLP (thread level parallelism), c’est-à-dire le parallélisme des threads. Le SMT est le partage d'un cœur de processeur superscalaire (les pipelines, les unités de calcul et les caches) entre plusieurs threads.
Non uniform memory accessEn informatique, un système NUMA (pour non uniform memory access ou non uniform memory architecture, signifiant respectivement accès mémoire non uniforme et architecture mémoire non uniforme) est un système multiprocesseur dans lequel les zones mémoire sont séparées et placées en différents endroits (et sur différents bus). Vis-à-vis de chaque processeur, les temps d'accès diffèrent donc suivant la zone mémoire accédée.
Spectre (vulnérabilité)vignette|179x179px|Logo de la vulnérabilité : un fantôme avec une branche. Spectre est une vulnérabilité matérielle de certaines implémentations de la prédiction de branchement, qui affecte les microprocesseurs modernes dotés de l'exécution spéculative. Cette vulnérabilité permet de récupérer des informations potentiellement sensibles en forçant un programme à accéder à des zones arbitraires de l'espace mémoire qui lui est alloué. Deux identifiants de Common Vulnerabilities and Exposures (CVE) liés à Spectre, CVE-2017-5753 et CVE-2017-5715, ont été émis.
Pentium (marque)Pentium est une marque déposée par Intel en 1993 pour remplacer les nombres utilisés jusqu'alors (80286, 80386, 80486) et que ses concurrents pouvaient imiter (Am386, Cyrix Cx486SLC, etc.). La marque a aussi vu Intel entrer sur le marché des processeurs pour serveurs Windows NT puis Linux. Elle a servi à désigner plusieurs évolutions majeures de microprocesseurs de la famille x86 (Pentium, Pentium Pro, Pentium 4) et mineures (Pentium MMX, Pentium II, Pentium III, Pentium M, Pentium D) de l'architecture de processeur x86.
Cache de processeurUn cache de processeur est une antémémoire matérielle utilisée par l'unité centrale de traitement (CPU) d'un ordinateur pour réduire le coût moyen (temps ou énergie) de l’accès aux données de la mémoire principale. Un cache de processeur est une mémoire plus petite et plus rapide, située au plus près d'une unité centrale de traitement (ou d'un cœur de microprocesseur), qui stocke des copies des données à partir d'emplacements de la mémoire principale qui sont fréquemment utilisés avant leurs transmissions aux registres du processeur.
Pentium 4Le Pentium 4, produit par Intel, est un microprocesseur x86 de septième génération inaugurant la microarchitecture NetBurst. Il succède à la génération P6 inaugurée par le Pentium Pro. Cette nouvelle microarchitecture a comme but avoué la montée (relativement) facile en fréquence. En effet, lors du lancement de ce processeur, la fréquence de fonctionnement du processeur faisait un excellent argument marketing. Intel décide donc de proposer un processeur possédant une haute fréquence de fonctionnement par rapport à ses prédécesseurs ou à son principal concurrent, l'Athlon XP d'AMD.
Prédiction de branchementLa prédiction de branchement est une fonctionnalité d'un processeur qui lui permet de prédire le résultat d'un branchement. Cette technique permet à un processeur de rendre l'utilisation de son pipeline plus efficace. Avec cette technique, le processeur va faire de l’exécution spéculative : il va parier sur le résultat d'un branchement, et va poursuivre l’exécution du programme avec le résultat du pari. Si le pari échoue, les instructions chargées par erreur dans le pipeline sont annulées.
NehalemLa microarchitecture Nehalem est une microarchitecture x86 d'Intel, utilisée par les familles Nehalem et Westmere. Elle succède à Core, par rapport à laquelle elle apporte plusieurs changements majeurs, comme l'intégration du contrôleur mémoire et l'utilisation d'un nouveau bus de données système et inter-processeur (QPI). Les déclinaisons Clarkdale intègrent en outre un contrôleur PCI-Express. Le premier processeur Nehalem a été le Core i7 920 sorti en . La microarchitecture suivante est Sandy Bridge.
Sandy Bridgevignette|Vue du dessous du même processeur Sandy Bridge est la microarchitecture de processeurs x86 d’Intel qui succède à Nehalem. Elle se décline en deux familles de processeurs ci-après détaillées : Sandy Bridge et Ivy Bridge. Les processeurs utilisant cette architecture sont gravés en ou en , et sont commercialisés depuis janvier 2011. Malgré la finesse accrue, le procédé de gravure reste le même que pour tous les microprocesseurs Intel depuis Penryn (utilisation d'oxyde d'hafnium comme isolant au sein des transistors des processeurs).
Processeur superscalaireUn processeur est dit superscalaire s'il est capable d'exécuter plusieurs instructions simultanément parmi une suite d'instructions. Pour cela, il comporte plusieurs unités de calcul, et est capable de détecter l'absence de dépendances entre instructions. Un processeur superscalaire cherche à exploiter le parallélisme entre instructions pour accélérer l'exécution des programmes. Cette approche évite de modifier les programmes pour exploiter le parallélisme : le processeur détecte lui-même les instructions pouvant être exécutées en parallèle, contrairement à d'autres approches, comme le VLIW.
CeleronLe Celeron est un microprocesseur d'entrée de gamme produit par Intel. Le premier Celeron a été annoncé le et utilisé pour la première fois le pour une version entrée de gamme du Pentium . L'objectif était à l'époque de proposer une offre entrée de gamme face à la concurrence (AMD K6, Cyrix MII, IDT Winchip...) Le Celeron constitue une version moins performante d'un autre processeur destinée à une utilisation demandant une puissance d'exécution faible (par exemple consultation de sites web et utilisation de logiciels de bureautique), à un coût réduit.
Intel AtomAtom est une marque d'Intel regroupant sous son nom plusieurs microarchitectures destinées principalement aux netbooks (initialement MID) et nettops puis qui s'est ensuite diversifiée vers les systèmes embarqués, l'électronique grand public (Box internet) et surtout les smartphones et tablettes tactiles. De par leurs environnements, ces processeurs sont conçus pour offrir une faible consommation électrique, gage d'autonomie, et par là même un faible dégagement thermique (TDP) favorisant ainsi leur intégration dans des systèmes compacts.
Programmation concurrenteLa programmation concurrente est un paradigme de programmation tenant compte, dans un programme, de l'existence de plusieurs piles sémantiques qui peuvent être appelées threads, processus ou tâches. Elles sont matérialisées en machine par une pile d'exécution et un ensemble de données privées. La concurrence est indispensable lorsque l'on souhaite écrire des programmes interagissant avec le monde réel (qui est concurrent) ou tirant parti de multiples unités centrales (couplées, comme dans un système multiprocesseurs, ou distribuées, éventuellement en grille ou en grappe).
Intel MICXeon Phi was a series of x86 manycore processors designed and made by Intel. It was intended for use in supercomputers, servers, and high-end workstations. Its architecture allowed use of standard programming languages and application programming interfaces (APIs) such as OpenMP. Xeon Phi launched in 2010. Since it was originally based on an earlier GPU design (codenamed "Larrabee") by Intel that was cancelled in 2009, it shared application areas with GPUs.
MultiprocessingMultiprocessing is the use of two or more central processing units (CPUs) within a single computer system. The term also refers to the ability of a system to support more than one processor or the ability to allocate tasks between them. There are many variations on this basic theme, and the definition of multiprocessing can vary with context, mostly as a function of how CPUs are defined (multiple cores on one die, multiple dies in one package, multiple packages in one system unit, etc.).
Multithreadingthumb|Schéma d'un process multithread Un processeur est dit multithread s'il est capable d'exécuter efficacement plusieurs threads simultanément. Contrairement aux systèmes multiprocesseurs (tels les systèmes multi-cœur), les threads doivent partager les ressources d'un unique cœur : les unités de traitement, le cache processeur et le translation lookaside buffer ; certaines parties sont néanmoins dupliquées : chaque thread dispose de ses propres registres et de son propre pointeur d'instruction.