内容

1. 介绍

1.1 范围

术语的定义 1.2

1.3 执行模型

1.4 标准

基线的 1.5 引用

1.6 组织

2. 指令

2.1 指令格式

2.2 条件编译

2.3 并行构造

2.4 的工作划分构造

2.4.1 结构化

2.4.2 部分构造

2.4.3 唯一构造

2.5 将并行构造的工作划分

2.5.1 构造的并行

2.5.2 并行部分构造

2.6 母版和同步指令

2.6.1 主构造

2.6.2 重要构造

2.6.3 障碍指令

2.6.4 基本构造

2.6.5 刷新指令

2.6.6 经过排序的构造

2.7 数据环境

2.7.1 threadprivate 指令

2.7.2 数据共享属性子句

专用 2.7.2.1

2.7.2.2 firstprivate

2.7.2.3 lastprivate

2.7.2.4 共享

2.7.2.5 默认

2.7.2.6 减少

2.7.2.7 copyin

2.7.2.8 copyprivate

2.8 指令绑定

2.9 指令嵌套

3. 运行库函数

3.1 执行环境功能

3.1.1 omp_set_num_threads 功能

3.1.2 omp_get_num_threads 功能

3.1.3 omp_get_max_threads 功能

3.1.4 omp_get_thread_num 功能

3.1.5 omp_get_num_procs 功能

3.1.6 omp_in_parallel 功能

3.1.7 omp_set_dynamic 功能

3.1.8 omp_get_dynamic 功能

3.1.9 omp_set_nested 功能

3.1.10 omp_get_nested 功能

3.2 死锁功能

3.2.1 omp_init_lock 和 omp_init_nest_lock 功能

3.2.2 omp_destroy_lock 和 omp_destroy_nest_lock 功能

3.2.3 omp_set_lock 和 omp_set_nest_lock 功能

3.2.4 omp_unset_lock 和 omp_unset_nest_lock 功能

3.2.5 omp_test_lock 和 omp_test_nest_lock 功能

超时实例的 3.3

3.3.1 omp_get_wtime 功能

3.3.2 omp_get_wtick 功能

4. 环境变量

4.1 OMP_SCHEDULE

4.2 OMP_NUM_THREADS

4.3 OMP_DYNAMIC

4.4 OMP_NESTED

A. 示例

并行执行简单循环的 A.1

指定条件编译的 A.2

使用并行区域的 A.3

使用 nowait 子句的 A.4

使用关键指令的 A.5

使用 lastprivate 子句的 A.6

使用降低子句的 A.7

指定并行部分的 A.8

使用单个指令的 A.9

指定排序的 A.10

指定线程的内置的数字 A.11

使用基本指令的 A.12

用于刷新指令的 A.13 与列表

用于刷新指令的 A.14 未列出

确定线程的数量 A.15 使用

使用锁的 A.16

使用可套上的锁定 A.17

为指令嵌套 A.18

A.19 显示不正确的嵌套的工作划分指令的示例

A.20 障碍指令绑定

A.21 用私有子句的范围变量

使用默认 (无) 子句的 A.22

A.23 已排序的指令的示例

A.24 私有子句的示例

A.25 copyprivate 数据特性子句的示例

使用 threadprivate 指令的 A.26

A.27 到 C99 可变长度数组的使用

A.28 到 num_threads 子句中使用

A.29 到母构造内的工作划分构造的使用

A.30 到 Reprivatization 的使用

A.31 线程安全的死锁功能

B. 运行库函数的存根

C. OpenMP C 和 C++ 语法

C.1 表示法

C.2 规则

D. 使用计划子句

E. 实现中定义的行为在 OpenMP C/C++

F. 新功能和说明在 2.0 版

请参见

概念

OpenMP C 和 C++ 应用程序接口