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.
MicroprogrammationLa microprogrammation est une technique de réalisation du séquenceur d'un processeur, utilisé dans la technologie CISC, dans laquelle le comportement du séquenceur est décrit par le contenu d'une mémoire. Ce contenu est appelé microprogramme ou microcode. Il peut être vu comme un programme destiné à une machine très simple appelée micro-séquenceur ; le processeur final est alors considéré comme une machine virtuelle simulée par le micro-séquenceur. Par opposition la technologie RISC ne contient pas de microcode.
Hyper-threadingthumb|Principe de l’hyper-threading. Hyper-threading (officiellement appelée Hyper-Threading Technology (HTT) ou HT Technology (HT)) est la mise en œuvre par l'entreprise Intel du simultaneous multithreading (SMT) à deux voies dans ses microprocesseurs. Le premier modèle grand public de la gamme à en bénéficier fut le Pentium 4 Northwood cadencé à . Le Xeon Northwood en bénéficia auparavant. Schématiquement, l’hyper-threading consiste à créer deux processeurs logiques sur une seule puce, chacun doté de ses propres registres de données et de contrôle, et d’un contrôleur d’interruptions particulier.
MultitâcheUn système d'exploitation est multitâche () s’il permet d’exécuter, de façon apparemment simultanée, plusieurs programmes informatiques. On parle également de multiprogrammation. Cette fonction est indépendante du nombre de processeurs dotant l’ordinateur ; une machine multiprocesseur n'est aucunement nécessaire pour exécuter un système d'exploitation multitâche. La simultanéité apparente ou réelle, selon le nombre de processeurs, est le résultat de l’alternance rapide d’exécution des processus présents en mémoire.
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).
Test de performancethumb|Comparaison de performance entre différents types d'ordinateurs. Un test de performance est un test dont l'objectif est de déterminer la performance d'un système informatique. L'acception la plus courante de ce terme est celle dans laquelle ces tests logiciels vont avoir pour objectif de mesurer les temps de réponse d'un système applicatif en fonction de sa sollicitation. Cette définition est donc très proche de celle de test de charge où l'on mesure le comportement d'un système en fonction de la charge d'utilisateurs simultanés.
Thread (informatique)thumb|Un processus avec deux threads. Un thread ou fil (traduction normalisés par ISO/CEI 2382-7:2000 (autres appellations connues : processus léger, fil d'exécution, fil d'instruction, processus allégé, exétron, tâche, voire unité d'exécution ou unité de traitement) est similaire à un processus car tous deux représentent l'exécution d'un ensemble d'instructions du langage machine d'un processeur. Du point de vue de l'utilisateur, ces exécutions semblent se dérouler en parallèle.
Programmation logiqueLa programmation logique est une forme de programmation qui définit les applications à l'aide : d'une base de faits : ensemble de faits élémentaires concernant le domaine visé par l'application, d'une base de règles : règles de logique associant des conséquences plus ou moins directes à ces faits, d'un moteur d'inférence (ou démonstrateur de théorème ) : exploite ces faits et ces règles en réaction à une question ou requête. Cette approche se révèle beaucoup plus souple que la définition d'une succession d'instructions que l'ordinateur exécuterait.
IA-64IA-64 (pour Intel Architecture ) est une architecture de processeurs Intel. Les processeurs Itanium et Itanium 2 qui intègrent cette architecture ont été conçus par Intel en coopération avec différents constructeurs informatiques (exemple : HP, Bull, etc.), pour l'intégration dans leur offre serveurs. Ces processeurs sont aujourd'hui présents presque uniquement dans des serveurs d'applications et des serveurs de base de données d'entreprise de forte capacité et traitant des volumes importants de données ou avec forte demande de calculs.
Programmation par contraintesLa programmation par contraintes (PPC, ou CP pour constraint programming en anglais) est un paradigme de programmation apparu dans les années 1970 et 1980 permettant de résoudre des problèmes combinatoires de grande taille tels que les problèmes de planification et d'ordonnancement. En programmation par contraintes, on sépare la partie modélisation à l'aide de problèmes de satisfaction de contraintes (ou CSP pour Constraint Satisfaction Problem), de la partie résolution dont la particularité réside dans l'utilisation active des contraintes du problème pour réduire la taille de l'espace des solutions à parcourir (on parle de propagation de contraintes).