Grappe de serveursOn parle de grappe de serveurs, de cluster, de groupement de serveurs ou de ferme de calcul (computer cluster en anglais) pour désigner des techniques consistant à regrouper plusieurs ordinateurs indépendants appelés nœuds (node en anglais), afin de permettre une gestion globale et de dépasser les limitations d'un ordinateur pour : augmenter la disponibilité ; faciliter la montée en charge ; permettre une répartition de la charge ; faciliter la gestion des ressources (processeur, mémoire vive, disques durs,
Multiple instructions on multiple datathumb|Principe du mode MIMD Multiple Instructions multiple data ou MIMD un des quatre modes de fonctionnement défini par la taxonomie de Flynn et désigne les machines multi-processeurs où chaque processeur exécute son code de manière asynchrone et indépendante. Pour assurer la cohérence des données, il est souvent nécessaire de synchroniser les processeurs entre eux, les techniques de synchronisation dépendent de l'organisation de la mémoire.
Performance engineeringPerformance engineering encompasses the techniques applied during a systems development life cycle to ensure the non-functional requirements for performance (such as throughput, latency, or memory usage) will be met. It may be alternatively referred to as systems performance engineering within systems engineering, and software performance engineering or application performance engineering within software engineering.
Memory coherenceMemory coherence is an issue that affects the design of computer systems in which two or more processors or cores share a common area of memory. In a uniprocessor system (whereby, in today's terms, there exists only one core), there is only one processing element doing all the work and therefore only one processing element that can read or write from/to a given memory location. As a result, when a value is changed, all subsequent read operations of the corresponding memory location will see the updated value, even if it is cached.
Partage de ressourceIn computing, a shared resource, or network share, is a computer resource made available from one host to other hosts on a computer network. It is a device or piece of information on a computer that can be remotely accessed from another computer transparently as if it were a resource in the local machine. Network sharing is made possible by inter-process communication over the network. Some examples of shareable resources are computer programs, data, storage devices, and printers. E.g.
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).
Multitraitement asymétriquevignette|Les processeurs multicœurs asymétriques ont souvent des mémoires séparés par type de cœurs. On parle de multitraitement asymétrique (en anglais, asymmetric multiprocessing ou AMP ou ASMP) dans le cas d'une architecture multiprocesseur où tous les processeurs ne sont pas traités de la même façon par le système d'exploitation. Par exemple, certains périphériques ou certains processus du système d'exploitation peuvent être attachés exclusivement à un processeur particulier.
Système d'exploitation distribuéUn système d'exploitation distribué est une couche logicielle au dessus d'un ensemble de nœuds de calculs indépendants, communiquant par un système de réseau propre ou général. Chaque nœud comprend dans ce type de système d'exploitation un sous ensemble de l’agrégat global. Chaque nœud comporte son propre noyau servant à contrôler le matériel et les couches basses des communications en réseau. Des logiciels de plus haut niveau sont chargés de coordonner les activités collaboratives de l'ensemble de la grappe et des éléments de chacun de ces nœuds.
Alimentation à découpageUne alimentation à découpage est une alimentation électrique dont la régulation est assurée par des composants électroniques de puissance utilisés en commutation (généralement des transistors). Ce mode de fonctionnement diffère de celui des alimentations linéaires dans lesquelles les composants électroniques sont utilisés en mode linéaire. Une alimentation à découpage de type forward est une alimentation qui transmet instantanément la puissance, alors que celle de type flyback stocke cette énergie sous forme d'énergie magnétique dans une inductance (bobine) et libère ensuite cette énergie dans un circuit dit secondaire.
Concurrency controlIn information technology and computer science, especially in the fields of computer programming, operating systems, multiprocessors, and databases, concurrency control ensures that correct results for concurrent operations are generated, while getting those results as quickly as possible. Computer systems, both software and hardware, consist of modules, or components. Each component is designed to operate correctly, i.e., to obey or to meet certain consistency rules.