3.1.7 omp_set_dynamic funkcji
Omp_set_dynamic funkcja włącza lub wyłącza dynamiczne dostosowania liczba wątków dostępnych do wykonania równoległych regionów.Format jest następujący:
#include <omp.h>
void omp_set_dynamic(int dynamic_threads);
Jeśli dynamic_threads wynikiem jest wartość różną od zera, liczba wątków, które są używane do wykonywania kolejnych równoległych regionów mogą być dostosowywane automatycznie przez środowisko czasu na najlepsze wykorzystanie zasobów systemowych.W rezultacie liczba wątków, określony przez użytkownika jest liczba wątków maksymalnej.Liczba wątków w zespole regionu równoległe wykonywanie pozostaje stały czas trwania tego regionu równoległych i zgłaszanych przez omp_get_num_threads funkcji.
Jeśli dynamic_threads wynikiem jest 0, dostosowanie dynamiczne jest wyłączone.
Ta funkcja ma wpływ, w opisanych powyżej, po wywołaniu z części programu, gdy omp_in_parallel funkcja zwraca wartość zero.Jeśli jest wywoływana z części programu, gdy omp_in_parallel funkcja zwraca wartość różną od zera, zachowanie tej funkcji jest niezdefiniowane.
Wywołanie omp_set_dynamic ma pierwszeństwo przed OMP_DYNAMIC zmiennej środowiskowej.
Domyślne dla dynamicznych dostosowania wątków jest zdefiniowane w implementacji.W efekcie kody użytkownika, które są zależne od określonej liczby wątków na prawidłową realizację jawnie Wyłącz dynamiczne wątków.Implementacje nie są wymagane, aby zapewnić możliwość dynamicznie dostosowuje liczbę wątków, ale są zobowiązane dostarczyć interfejsu w celu wsparcia przenoszenia na wszystkich platformach.
Odsyłacze:
omp_get_num_threads działać, zobacz sekcji 3.1.2 na stronie 37.
OMP_DYNAMIC środowiska zmiennej, zobacz sekcji 4.3 na stronie 49.
omp_in_parallel działać, zobacz sekcja 3.1.6 na stronie 38.