Unified Parallel C (UPC) is an extension of the C programming language designed for high-performance computing on large-scale parallel machines, including those with a common global address space and those with distributed memory. The programmer is presented with a single shared, partitioned address space, where variables may be directly read and written by any processor, but each variable is physically associated with a single processor.
| Property | Value |
| dbpprop:abstract
|
- Unified Parallel C (UPC) is an extension of the C programming language designed for high-performance computing on large-scale parallel machines, including those with a common global address space and those with distributed memory. The programmer is presented with a single shared, partitioned address space, where variables may be directly read and written by any processor, but each variable is physically associated with a single processor. UPC uses a Single Program Multiple Data model of computation in which the amount of parallelism is fixed at program startup time, typically with a single thread of execution per processor. In order to express parallelism, UPC extends ISO C 99 with the following constructs: An explicitly parallel execution model A shared address space Synchronization primitives and a memory consistency model Memory management primitives The UPC language evolved from experiences with three other earlier languages that proposed parallel extensions to ISO C 99: AC, Split-C, and Parallel C Preprocessor (PCP). UPC is not a superset of these three languages, but rather an attempt to distill the best characteristics of each. UPC combines the programmability advantages of the shared memory programming paradigm and the control over data layout and performance of the message passing programming paradigm.
- Unified Parallel C (UPC) es una extensión del lenguaje de programación C diseñado para computación de alto rendimiento en máquinas paralelas, incluyendo tanto aquellas con un espacio de memoria global como aquellas con un espacio de memoria distribuido, como los clusters. El programador observa un único espacio de memoria compartida donde las variables se pueden leer y escribir desde cualquier procesador, pero cada reside físicamente en un único procesador, con el que se dice que tiene afinidad. UPC usa un modelo de computación SPMD (Single Program Multiple Data) donde la cantidad de procesos se puede indicar tanto en tiempo de compilación como al inicio de la ejecución del programa. Para trabajar con el paralelismo, UPC extiende el ISO C 99 añadiéndole: Un modelo de programación explícitamente paralelo. Un espacio de memoria compartida. Primitivas de sincronización y de consistencia de memoria. Primitivas de gestión de memoria. UPC evolucionó de experiencias con otros tres lenguajes más prematuros que propusieron extendiones paralelas a ISO C 99: AC, Split-C, y Parallel C Preprocessor (PCP). UPC no es un superconjunto de estos tres lenguajes sino un intento de destilar las mejores características de cada uno. UPC combina la facilidad de programación del paradigma de programación en memoria compartida con el control del tráfico de datos y el rendimiento del paradigma de programación de paso de mensajes.
- Unified Parallel C (UPC) est une extension du langage de programmation C conçue pour les calculs hautes-performances sur des supercalculateurs parallèles, y compris les architectures à espace d'adressage global (SMP et NUMA) et celles à mémoire distribuée (clusters). Le langage définit un espace d'adressage partagé et partitionné, où les variables peuvent être directement lues et écrites par n'importe quel thread, mais chaque variable est physiquement associée avec un simple processeur. UPC utilise un modèle de calcul de type SPMD (Single Program Multiple Data) dans lequel la quantité de thread est fixée à la compilation, typiquement avec un seul thread d'exécution par processeur. Pour implémenter le parallélisme, UPC étend la norme C ISO 99 avec les concepts suivants: Un modèle d'exécution parallèle explicite Un espace d'adressage partagé Des primitives de synchronisation et un modèle de cohérence de la mémoire Des primitives de gestion de la mémoire Le langage UPC est issu des expériences avec trois autres langages antérieurs qui proposaient des extensions parallèles au C ISO 99 (AC, Split-C, and Parallel C Preprocessor). UPC n'est pas un simple agrégat de ces trois langages, mais plutôt une tentative de synthèse des meilleures caractéristiques de chacun. UPC combine les avantages du paradigme de la programmation à mémoire partagée, du contrôle de la disposition des données et des performances du paradigme de programmation par échange de messages.
- Unified Parallel C (UPC) è un'estensione del linguaggio di programmazione C sviluppato per ottenere elevate prestazioni di calcolo in macchine basate su parallelismo massivo comprese le macchine con indirizzamento della memoria globale tipo quelle SMP o quella basate su architettura NUMA e per le macchine a memoria distribuita come i cluster. Il programmatore vede una singola memoria condivisa da tutto il sistema, anche se ogni variabile è fisicamente assegnata a un singolo processore. UPC utilizza un modello di elaborazione Single Program Multiple Data, in questo modello di programmazione il parallelismo del sistema è deciso all'avvio dei programma, tipicamente a ogni processore viene assegnato un singolo Thread. Per permettere l'esplicitazione del parallelismo IPC estende il C ISO 99 con i seguenti costruttori: Un modello di esecuzione a parallelismo esplicito Uno spazio di memoria condivisa Primitive di sincronizzazione e un modello di della coerenza della memoria Primitive di gestione della memoria. L'UPC si è evoluto dall'esperienza del gruppo di programmatori che utilizzando altre estensioni del C per la gestione delle macchine parallele come lo Split-X e il Parallel C Prepocessor (PCP) ne saggiarono le limitazioni e decisero di superarle. L'UPC non raccoglie tutte le funzionalità dei precedenti linguaggi ma piuttosto cerca di raccogliere le caratteristiche migliori dei linguaggi in una struttura coerente e solida. UPC combina la semplicità di programmare un sistema a memoria condivisa che consente una gestione diretta dei dati con le prestazioni di un sistema basato sul passaggio di messaggi.
|
| dbpprop:designer
| |
| dbpprop:hasPhotoCollection
| |
| dbpprop:implementations
| |
| dbpprop:influencedBy
| |
| dbpprop:latestReleaseDate
| |
| dbpprop:latestReleaseVersion
| |
| dbpprop:name
| |
| dbpprop:operatingSystem
| |
| dbpprop:paradigm
| |
| dbpprop:reference
| |
| dbpprop:typing
| |
| dbpprop:website
| |
| dbpprop:wikiPageUsesTemplate
| |
| rdf:type
| |
| rdfs:comment
|
- Unified Parallel C (UPC) is an extension of the C programming language designed for high-performance computing on large-scale parallel machines, including those with a common global address space and those with distributed memory. The programmer is presented with a single shared, partitioned address space, where variables may be directly read and written by any processor, but each variable is physically associated with a single processor.
- Unified Parallel C (UPC) es una extensión del lenguaje de programación C diseñado para computación de alto rendimiento en máquinas paralelas, incluyendo tanto aquellas con un espacio de memoria global como aquellas con un espacio de memoria distribuido, como los clusters.
- Unified Parallel C (UPC) est une extension du langage de programmation C conçue pour les calculs hautes-performances sur des supercalculateurs parallèles, y compris les architectures à espace d'adressage global (SMP et NUMA) et celles à mémoire distribuée (clusters).
- Unified Parallel C (UPC) è un'estensione del linguaggio di programmazione C sviluppato per ottenere elevate prestazioni di calcolo in macchine basate su parallelismo massivo comprese le macchine con indirizzamento della memoria globale tipo quelle SMP o quella basate su architettura NUMA e per le macchine a memoria distribuita come i cluster. Il programmatore vede una singola memoria condivisa da tutto il sistema, anche se ogni variabile è fisicamente assegnata a un singolo processore.
|
| rdfs:label
|
- Unified Parallel C
- Unified Parrallel C
- Unified Parallel C
- Unified Parallel C
|
| owl:sameAs
| |
| skos:subject
| |
| foaf:homepage
| |
| foaf:page
| |
| is dbpprop:dialects
of | |
| is owl:sameAs
of | |