OpenMP: differenze tra le versioni

Contenuto cancellato Contenuto aggiunto
FrescoBot (discussione | contributi)
m Bot: apostrofo dopo l'articolo indeterminativo e modifiche minori
FrescoBot (discussione | contributi)
m Bot: accenti
Riga 1:
'''OpenMP''' (Open Multiprocessing) è un [[Application programming interface|API]] multipiattaforma per la creazione di applicazioni parallele su sistemi a memoria condivisa. E'È supportata da vari linguaggi di programmazione come il [[C (linguaggio)|C]]/[[C++]] e il [[Fortran]] e su varie [[Microarchitettura|architteture di elaboratori]] e [[Sistema operativo|sistemi operativi]] tra cui [[Oracle Solaris (sistema operativo)|Solaris]], [[AIX (sistema operativo)|AIX]], [[HP-UX]], [[Linux]], [[Mac OS X]] e la piattaforma [[Microsoft Windows|Windows]]. OpenMP è composto da un insieme di [[Direttiva (programmazione)|direttive di compilazione]], [[Libreria (software)|routine di librerie]] e variabili d'ambiente che ne definiscono il funzionamento a run-time.<ref name="openmp.org">http://openmp.org/wp/openmp-compilers/ OpenMP Compilers</ref><ref name="openmp.org"/><ref>http://openmp.org/wp/2008/10/openmp-tutorial-at-supercomputing-2008/ OpenMP Tutorial at Supercomputing 2008</ref><ref>http://openmp.org/wp/2009/04/download-book-examples-and-discuss/ Using OpenMP - Portable Shared Memory Parallel Programming - Download Book Examples and Discuss</ref>
 
''OpenMP'' è gestito dal consorzio [[Organizzazione non a scopo di lucro|no profit]] ''OpenMP Architecture Review Board'' (or OpenMP ARB) assieme ad un gruppo di produttori di Hardware e di sviluppatori di software come [[Advanced Micro Devices|AMD]], [[IBM]], [[Intel]], [[Cray Inc.]], [[Hewlett-Packard]], [[Fujitsu]], [[NVIDIA Corporation]], [[NEC Corporation]], [[Microsoft Corporation]], [[Texas Instruments Incorporated|Texas Instruments]], [[Oracle Corporation|Oracle]] ed altri.
Riga 74:
Sono usati per assegnare compiti indipendenti a uno o a tutti i thread.
 
** ''omp for'' o ''omp do'': divide il ciclo di loop sui threads. E'È chiamato anche loop construct.
** ''sections'': assegna un blocco di codice consecutivo ma indipendente a differenti thread.
** ''single'': assegna un blocco di codice che sarà eseguito da un solo thread.