Processeur scalaireUn processeur est dit scalaire s'il ne traite qu'une seule donnée à la fois. Il est superscalaire si, grâce à son architecture parallélisée, il est capable d'en traiter plusieurs. Les processeurs scalaires sont parfois mis en opposition avec les processeurs vectoriels. On parle aussi de valeur ou de variable scalaire pour désigner une valeur ou un contenant destiné par son type à contenir une valeur atomique. On oppose valeur atomique à valeur composite. Un entier, un nombre flottant sont des valeurs atomiques.
Explicit parallelismIn computer programming, explicit parallelism is the representation of concurrent computations by means of primitives in the form of special-purpose directives or function calls. Most parallel primitives are related to process synchronization, communication or task partitioning. As they seldom contribute to actually carry out the intended computation of the program, their computational cost is often considered as parallelization overhead. The advantage of explicit parallel programming is the absolute programmer control over the parallel execution.
SETI@homeSETI@home (abréviation de SETI at home, pouvant se traduire par SETI à la maison) est un projet de calcul distribué utilisant des ordinateurs branchés sur Internet. Il est hébergé par le Space Sciences Laboratory de l'université de Californie à Berkeley et est accessible au public depuis le . Il y avait deux objectifs originaux à SETI@home. Le premier était de prouver la fonctionnalité et la viabilité du calcul distribué. Le deuxième était de faire du travail scientifique en supportant une analyse observationnelle cherchant à détecter de la vie intelligente non terrestre.
Réseau systoliqueDans les architectures informatiques parallèles, un réseau systolique est un réseau homogène d'unités de traitement de données (DPU) étroitement couplées appelées cellules ou nœuds. Chaque nœud ou DPU calcule indépendamment un résultat partiel en fonction des données reçues de ses voisins en amont, stocke le résultat et le transmet en aval. Les matrices systoliques ont été utilisées pour la première fois dans Colossus, qui était un des premiers ordinateurs utilisés pour casser les chiffrements allemands de Lorenz pendant la Seconde Guerre mondiale.
Apache StormApache Storm est un framework de calcul de traitement de flux distribué, écrit principalement dans le langage de programmation Clojure. Créé à l'origine par Nathan Marz et l'équipe de BackType le projet est rendu open source après avoir été acquis par Twitter. Il utilise des "spouts" et des "bolts" créés sur mesure pour définir les sources d'informations et les manipulations permettant un traitement par lots et distribué des données en continu. La première publication a eu lieu le .
Distributed shared memoryIn computer science, distributed shared memory (DSM) is a form of memory architecture where physically separated memories can be addressed as a single shared address space. The term "shared" does not mean that there is a single centralized memory, but that the address space is shared—i.e., the same physical address on two processors refers to the same location in memory. Distributed global address space (DGAS), is a similar term for a wide class of software and hardware implementations, in which each node of a cluster has access to shared memory in addition to each node's private (i.
Apache SparkSpark (ou Apache Spark) est un framework open source de calcul distribué. Il s'agit d'un ensemble d'outils et de composants logiciels structurés selon une architecture définie. Développé à l'université de Californie à Berkeley par AMPLab, Spark est aujourd'hui un projet de la fondation Apache. Ce produit est un cadre applicatif de traitements des mégadonnées (big data) pour effectuer des analyses complexes à grande échelle. En 2009, Spark fut conçu par lors de son doctorat au sein de l'université de Californie à Berkeley.
Fork–join modelIn parallel computing, the fork–join model is a way of setting up and executing parallel programs, such that execution branches off in parallel at designated points in the program, to "join" (merge) at a subsequent point and resume sequential execution. Parallel sections may fork recursively until a certain task granularity is reached. Fork–join can be considered a parallel design pattern. It was formulated as early as 1963.
Uniform memory accessUniform memory access (UMA) is a shared memory architecture used in parallel computers. All the processors in the UMA model share the physical memory uniformly. In an UMA architecture, access time to a memory location is independent of which processor makes the request or which memory chip contains the transferred data. Uniform memory access computer architectures are often contrasted with non-uniform memory access (NUMA) architectures. In the NUMA architecture, each processor may use a private cache.
Map (parallel pattern)Map is an idiom in parallel computing where a simple operation is applied to all elements of a sequence, potentially in parallel. It is used to solve embarrassingly parallel problems: those problems that can be decomposed into independent subtasks, requiring no communication/synchronization between the subtasks except a join or barrier at the end. When applying the map pattern, one formulates an elemental function that captures the operation to be performed on a data item that represents a part of the problem, then applies this elemental function in one or more threads of execution, hyperthreads, SIMD lanes or on multiple computers.