OpenMP: differenze tra le versioni
Contenuto cancellato Contenuto aggiunto
m Bot: Aggiungo template {{interprogetto}} (FAQ) |
m →Gli elementi fondamentali: tag source deprecati, replaced: <source lang= → <syntaxhighlight lang= (5), </source> → </syntaxhighlight> (5) |
||
Riga 41:
Esempio (in C): Visualizza la stringa "Hello, world" utilizzando thread multipli.
<
#include <stdio.h>
Riga 50:
return 0;
}
</syntaxhighlight>
Viene usato il flag -fopenmp per compilare utilizzando il compilatore GCC:
<
$gcc -fopenmp hello.c -o hello
</syntaxhighlight>
L'Output su un computer con 2 Core e 2 threads è il seguente:
<
Hello, world.
Hello, world.
</syntaxhighlight>
L'output può essere non comprensibile a causa del fenomeno di [[Race condition]] dovuto ai due thread che condividono lo [[Canali standard|standard output]].
<
Hello, wHello, woorld.
rld.
</syntaxhighlight>
* '''Costrutti di Work sharing'''
Riga 82:
Esempio: inizializzo il valore in un array in parallelo utilizzando ogni thread per svolgere il lavoro
<
const int N = 100000;
int i, a[N];
Riga 91:
return 0;
}</
* '''Clausole OpenMP''' (data environment management)
|