一共19个API函数,但是只知道10个,剩下的9个没有找到是什么意思。
OMP_SET_NUM_THREADS
设置用于未使用 num_threads() 子句指定后续并行区域的线程数.此调用只影响调用线程所遇到的同一级或内部嵌套级别的后续并行区域.
void omp_set_num_threads(int num_threads);
OMP_GET_NUM_THREADS
返回当前组中正在执行从中调用其的并行区域的线程的数量.
int omp_get_num_threads(void);
OMP_GET_MAX_THREADS
如果在程序中此处遇到未使用 num_threads() 子句指定的活动并行区域,则返回将用于组成线程组的最大线程数.
int omp_get_max_threads(void);
OMP_GET_THREAD_NUM
返回组内执行对此函数调用的线程的号码.此号码位于 0 和 OMP_GET_NUM_THREADS()-1 之间,0 为主线程.
int omp_get_thread_num(void);
OMP_GET_NUM_PROCS
返回程序可用的处理器数.
int omp_get_num_procs(void);
OMP_IN_PARALLEL
确定线程是否在并行区域的动态范围内执行.
int omp_in_parallel(void);
如果在活动并行区域的动态范围内调用,则返回非零值;否则,返回零值.活动并行区域是指 IF 子句求值为 TRUE 的并行区域.
OMP_SET_DYNAMIC
启用或禁用可用线程数的动态调整.(缺省情况下启用动态调整.)此调用只影响调用线程所遇到的同一级或内部嵌套级别的后续并行区域.
void omp_set_dynamic(int dynamic);
如果 dynamic 的求值为非零值,启用动态调整;否则,禁用动态调整.
OMP_GET_DYNAMIC
确定在程序中此处是否启用了动态线程调整.
int omp_get_dynamic(void);
启用了动态线程调整时返回非零值;否则,返回零值.
OMP_SET_NESTED
启用或禁用嵌套并行操作.此调用只影响调用线程所遇到的同一级或内部嵌套级别的后续并行区域.
void omp_set_nested(int nested);
nested 的求值为非零值时启用嵌套并行操作;否则,禁用嵌套并行操作.缺省情况下,禁用嵌套并行操作.有关嵌套并行操作的信息,请参阅第 2 章.
OMP_GET_NESTED
确定在程序中此处是否启用了嵌套并行操作.
int omp_get_nested(void);
启用嵌套并行操作时返回非零值;否则,返回零值.有关嵌套并行操作的信息,请参阅第 2 章.
omp_set_schedule
原形:void omp_set_schedule(omp_sched_t kind, int modifier);
omp_get_schedule
原形:void omp_get_schedule(omp_sched_t * kind, int * modifier );
omp_get_thread_limit
原形:int omp_get_thread_limit(void);
omp_set_max_active_levels
原形:void omp_set_max_active_levels (int max_levels);
omp_get_max_active_levels
原形:int omp_get_max_active_levels(void);
omp_get_level
原形:int omp_get_level(void);
omp_get_ancestor_thread_num
原形:int omp_get_ancestor_thread_num(int level);
omp_get_team_size
原形:int omp_get_team_size(int level);
omp_get_active_level
原形:int omp_get_active_level(void);