Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Betrachten Sie das folgende Beispiel der falschen (für Abschnitt 3.1.2 auf Seite 37):
np = omp_get_num_threads(); // misplaced
#pragma omp parallel for schedule(static)
for (i=0; i<np; i++)
work(i);
Die omp_get_num_threads() Rückkehraufrufe 1 im seriellen Codeabschnitt, sodass NP sind immer gleich 1 im vorherigen Beispiel.Um die Anzahl der Threads ermitteln möchten, die für den bereitgestellten parallelen Bereich muss der Aufruf innerhalb des parallelen Bereichs.
Das folgende Beispiel zeigt, wie Sie das Programm neu geschrieben werden, ohne eine Abfrage einzuschließenden für die Anzahl von Threads:
#pragma omp parallel private(i)
{
i = omp_get_thread_num();
work(i);
}