OpenMP: differenze tra le versioni

Contenuto cancellato Contenuto aggiunto
ValterVBot (discussione | contributi)
m Note: Sostituzione template reference, replaced: {{references}} → <references/>
FrescoBot (discussione | contributi)
m Bot: niente spazi dopo l'apostrofo
Riga 14:
Ogni thread è identificato tramite un id che può essere ottenuto tramite la funzione omp_get_thread_num(). Tale valore è di tipo intero e per il master thread vale 0. Al termine della esecuzione del codice parallelizzato gli slave thread ritornano il controllo al master thread il quale continua l'esecuzione fino al termine del programma.
 
Per default ogni thread esegue la sezione parallelizzata (parallelized section) di codice in modo indipendente. Appositi costrutti per la divisione del lavoro (chiamati ''Work-sharing constructs'') permettono di dividere il task tra i thread disponibili in modo che ciascuno di essi esegua la propria parte di codice. Il [[parallelismo a livello di thread]] e quello a livello di dati sono ottenuti attraverso l' OpenMP in questo modo.
 
L'ambiente di esecuzione in tempo reale (runtime environment) alloca i thread sui processori a seconda di vari fattori tra cui il carico della macchina. Nel linguaggio [[C (linguaggio)|C]]/[[C++]] le funzioni implementate dallo standard openMP sono incluse in un [[Header file|file header]] chiamato omp.h